
                   ============================
                    R E L E A S E    N O T E S
                   ============================

       QLogic Management Application Programming Interface
                          for  Linux

          Copyright (c) 2000 - 2014 QLogic Corporation
                      All rights reserved.
                            Sept 12, 2014


Version 6.24.01 (Sept 12, 2014)
----------------------------
 
QLogic rebranding  

Version 6.23.13 (August 11, 2014)
----------------------------

   Fixes:
   =====
1. Problem: Cont00074866
         lnxfwupg takes 1 hour 27 mins to complete restorenvram with Macronix 16M NVRAM
   Cause:
         Macronix nvram type not being recognized as a BUF_FLASH type in bmapilnx -> internal.cpp -> IsFlashNVRM().
		 so the nvram was being written by using a very small buffer. 
   Change:
         Added the list of "Logan" nvram types for B0 into internal.h from BMAPI internal.h and
		 copied code from BMAPI internal.cpp to handle the "Logan" B0 nvram types.
   Impact:
          BmapiWriteFirmware API  


Version 6.23.11 (June 19, 2014)
----------------------------

   Fixes:
   =====
1. Problem: Cont00073479 (QLogic CQ) Fix Provided by QLogic team.
         Agent stops responding (OperationalStatus = 13) while system left idle overnight.
   Cause:
         File descriptor was not closed before returning from function.
   Change:
         Added fclose before returning from function.
   Impact:
          Fixed Agent stop issue if run overnight due to unavailability of file descriptors on system.  



Version 6.23.10 (June 09, 2014)
----------------------------

   Fixes:
   =====
1. Problem: 
         BMAPI memory leak identified by Nx1 (BRCM) team.
   Cause:
         memory leak.
   Change:
         Free memory.
   Impact:
         BMAPI memory foot print.


Version 6.23.9 (Apr 24, 2014)
----------------------------

   Fixes:
   =====
1. Problem: Cont00073250 
         The bmapi-RPM file installation fails (RH7.0X64 SS9)
   Cause:
         RHEL 7 does not have libgcc for 32 bit.The 64 bit RPM contains both 32 and 64 bit binaries.
   Change:
         Remove 32 bit BMAPI binary from the 64 bit RPM.
   Impact:
         BMAPI Installation.




Version 6.23.8 (Apr 14, 2014)
----------------------------

   Fixes:
   =====
1. Problem: Cont00073381 
         BMAPI call has trouble returning correct CCM version on NX1 adapters. 
   Cause:
         Not enough bytes were read from CCM header to retrieve complete version information.
   Change:
         Read version information from a new offset.
   Impact:
         CCM version.



Version 6.23.7 (Mar 24, 2014)
----------------------------

   Fixes:
   =====
1. Problem: cont00000378
         SR-IOV update for 534FLB fails silently
   Cause:
         Implementation for MF mode for PT and VC modules was missing.
   Change: 
         Implemented code for MF mode for PT and VC.
   Impact:
         SRIOV VF per PF



Version 6.23.6 (February 4, 2014)
----------------------------------

   Fixes:
   ======

   1. Problem: CQ72403
            [LnxFwupg] Fwupg show "Error BmapiGetFirmwareInfo" while restorenvram image.            
      Cause:
            The 'device up' check was failing which causes this error.
      Change:
             Remove this check as the driver allows NVRAM access even when device is not up. 
      Impact:
             NVRAM access.

   2. Problem: CQ72598
            BMAPI call 'BmapiGetFirmwareInfo' returns incorrect CCM version            
      Cause:
            Problem in parsing CCM version.
      Change:
            Correct logic to parse CCM version is implemented.
      Impact:
            BmapiGetFirmwareInfo API.




Version 6.23.5 (November 6, 2013)
----------------------------------

   Fixes:
   ======

   1. Problem: CQ70539
            DUP_Linux x6: The L2 Firmware upgrade for Okala takes a long time to excute            
      Cause:
            FWUP makes ioctl to the driver with many calls with small chunk size (256 bytes MAX) per call.
      Change:
            Changed BMAPI_EEPROM_MAX_ACCESS_SIZE to 1024 to reduce the number of ioctl calls to driver
      Impact:
            EEprom Access time.



Version 6.23.4 (September 26, 2013)
----------------------------------

   Fixes:
   ======

   1. Problem: CQ70537
            Show incorrect link speed when changing max bandwidth of NPAR 
            using BACS on Linux.
      Cause:
            Not passing the right NPAR function number when setting the speed.
            Always setting the maxiumum bandwidth limit on function 0 or 
            function 1 depending on the port.
      Change:
            Passing the right NPAR function number.
      Impact:
            BmapiSetNicPartCfg API



Version 6.23.3 (September 17, 2013)
-----------------------------

   Fixes:
   ======

   1. Problem: CQ69525
            Backup MAC address was not available for 57710 and 5706 Series.
      Cause:
            Implementation for backup MAC address was missing.
      Change:
            Added Backup MAC address retrieval support for 57710 and 5706.
      Impact:
            Bmapiget57710FwInfo(),BmapiGet5706FwInfo APIs


Version 6.23.2 (SEP 3, 2013)
-----------------------------

   Fixes:
   ======

   1. Problem: CQ70784
            BMAPI library indicates Barracuda (CNR100R) support UMP firmware
      Cause:
            MODULES_PN component's version is copied in 'ump_ver' member of 
            'BM_FW_INFO_57710' in BmapiGet57710FwInfo() API
      Change:
            MODULES_PN component's version is not copied to ump_ver.
      Impact:
            Bmapiget57710FwInfo() API


Version 6.23.1 (Aug 26, 2013)
-----------------------------

   Fixes:
   ======

   1. Problem: CQ70474
            ESX FW Upgrade: Failed to upgrade BC/PXE/NCSI/SMASH firmware on Logan
      Cause:
            Not returning any status code.
      Change:
            Return the success status code during upgrade.
      Impact:
            upgrade BC/PXE/NCSI/SMASH program and Bmapi Linux


Version 6.23.0 (August 06, 2013)
-------------------------------

   Fixes:
   ======

1. Problem: CQ70280
            NX2 Fwupg failed to do "restorenvram"no matter interface down/up.
      Cause:
             not allowed to read chip_id information when interface is down
      Change:
            Chip info can be read even when interface is down
      Impact:
            restorenvram functionality


2. Problem: CQ70305
            NX2 Fwupg failed to upgrade BC/NCSI when interface down.
      Cause:
             not allowed to read chip_id information when interface is down
      Change:
            Chip info can be read even when interface is down
      Impact:
            upgrade functionality


Version 6.22.7 (July 31, 2013)
-----------------------------

   Fixes:
   ======

1. Problem:   ( Cont00069412)
              Linux BACS displays incorrect FCoE data
   Cause:
              Multiple string parsing issues
   Change:
              Fixed all string parsing issues
   Impact:
              FCoE configuration.



Version 6.22.5 (July 20, 2013)
-----------------------------

   Fixes:
   ======

1. Problem:   ( Cont00070043 )
              Not able to flash 534FLB with VMware  Esxi OFUT...
   Cause:
              'Network interface up' condition fails
   Change:
              This check is no longer needed with the new driver versions
   Impact:
              FWUPG for ESXi


Version 6.22.4 (Jul 5, 2013)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ69616
            NCSI f/w component won't get updated  with linux and Esxi OFUT
      Cause:
            Not implemented as per the specs.
      Change:
           Added support for NCSI
      Impact:
            NCSI


   2. Problem: CQ61314
            FW upgrade not possible when NIC ethernet interface is not up
      Cause:
            Problem with old drivers.
      Change:
           Do not check if Interface is up or not.Taken care by the driver.
      Impact:
           FW upgrade
            



Version 6.22.3 (June 14, 2013)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ69412
            Linux BACS displays incorrect FCoE data.
      Cause:
            String is not compared correctly.
      Change:
            Change the condition to compare strings.
      Impact:
            FCoE.


Version 6.22.2 (May 09, 2013)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ68867
            The 'crc' command in FwUpg failed in 'APE Config'
            region for BCM5725 NIC in ESXi system.
      Cause:
            Bmapilnx did not retrieve data correctly from APE
            register in BmapiGetMgmtOTPKeys() in ESXi system.
      Change:
            Bmapilnx will retrieve data correctly from APE
            register through tg3 driver in ESXi system.
      Impact:
            BmapiGetMgmtOTPKeys API for ESXi system.


Version 6.22.1 (May 02, 2013)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ68897
            Corruption problem reported after a bmcc create
            for BCM5725 NIC in Linux OS.
      Cause:
            Bmapilnx did not write the APE_CFG data correctly
            in BmapiSetMgmtConfig().
      Change:
            Bmapilnx writes the APE_CFG data correctly in
            BmapiSetMgmtConfig().
      Impact:
            BmapiSetMgmtConfig API.

   Enhancements:
   =============
   1. Request:
            Added BmapiGetISCSISessionStatistics() function
      Change:
            Added BmapiGetISCSISessionStatistics() function
      Impact:
            BMAPI.


Version 6.22.0 (Apr 29, 2013)
-----------------------------
   Enhancements:
   =============
   1. Request: CQ68305, CQ68306, CQ68307, CQ68309
            Allow FwUpg to upgrade firmware when the device
            is down for Linux and ESXi system.
     Change:
            Allow FwUpg to upgrade firmware when the device
            is down for Linux and ESXi system.
      Impact:
            All NX1 and NX2 NICs.


Version 6.21.2 (Mar 14, 2013)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ66602
            Some systems will halt when running FwUpg tool.
      Cause:
            Bmapilnx will cause some systems to halt when
            searching for iBFT.
      Change:
            Bmapilnx will avoid to halt the system when
            searching the IBFT.
      Impact:
            BMAPI initialization.


Version 6.21.1 (Mar 08, 2013)
-----------------------------
   Fixes:
   ======
   1. Problem:
            Bmapilnx failed to suspend device when FwUpg tried to
            upgrade the DASH firmware for BCM5761 NIC.
      Cause:
            Bmapilnx failed to suspend device when BCM5761 has
            DASH firmware, dash112.bin or earlier.
      Change:
            Bmapilnx will use an enhanced algorithm to suspend
            the device.
      Impact:
            BmapiSuspendDriverEx API.


Version 6.21.0 (Feb 26, 2013)
-----------------------------

   Enhancements:
   =============
   1. Request: CQ67752
            Add support in BmapiGet5706FwInfo and BmapiGet57710FwInfo
            APIs to retrieve CCM version string.
      Change:
            Added support in BmapiGet5706FwInfo and BmapiGet57710FwInfo
            APIs to retrieve CCM version string.
      Impact:
            BmapiGet5706FwInfo and BmapiGet57710FwInfo APIs for NX2 NICs.

   2. Request:
            Support storage personality configuration for OEM.
      Change:
            Add 'storage_enum' in BM_RES_CFG.
      Impact:
            APIs for BM_RES_CFG for NXII 10G devices.

   3. Request:
            Add 'prevent_iscsi' configuration.
      Change:
            Add 'prevent_iscsi' in BM_RES_CFG, BM_MBA_PARAMS,
            BM_NIC_PART_CFG and BM_NIV_CFG.
      Impact:
            All related APIs


Version 6.20.0 (Feb 22, 2013)
-----------------------------

   Enhancements:
   =============
   1. Request:
            Add SRIOV support.
      Change:
            As requested.
      Impact:
            SRIOV.


Version 6.19.1 (Feb 08, 2013)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ67582/67587
               BACS failed to set 'VLAN enable/disable' and 'Link
               Speed' parameters through BmapiSetMBAParams API.
      Cause:
               The bmapilnx did not implement the BmapiSetMBAParams
               API correctly.
      Change:
               The bmapilnx implements the BmapiSetMBAParams API
               to set the two MBA parameters correctly.
      Impact:
               BmapiSetMBAParams/BmapiGetMBAParams API.


Version 6.19.0 (Jan 15, 2013)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ67186
               FwUpg 'dumpnvram' took a long time to dump nvram
               content of BCM5725.
      Cause:
               The bmapilnx did not detect the NVRAM type correctly
               for BCM5725 and use a small block size to access NVRAM.
      Change:
               The bmapilnx will detect the NVRAM type correctly for
               BCM5725 and use a correct block size to access NVRAM.
      Impact:
               BCM57767/57787/5762/5725/5727 NICs.

   2. Problem:
               CQ66965: OOB Management is NOT available to DASH-capable
               5762 in the BACS Configuration tab.
      Cause:
               BMAPI did not detect TruManage capabilities correctly
               for 5762.
      Change:
               Detect TruManage capabilities correctly for 5762.
      Impact:
               TruManage on 5762


Version 6.18.4 (Dec 11, 2012)
-----------------------------
   Enhancements:
   =============
   1. Request:
            Add 57767/57787/5762/5725/5727 support.
      Change:
            Added 57767/57787/5762/5725/5727 support.
      Impact:
            All.


Version 6.18.3 (Nov 16, 2012)
------------------------------
   Fixes:
   ======
   1. Problem: CQ66470
               Segmentation error from bmapilnx when running on
               BCM57810 NIC.
      Cause:
               The BCM57810 returned shmem2 size that was larger
               than the shmem2 struct defined for this bmapilnx.
               When bmapilnx tried to read beyond the shmem2 struct
               defined, it caused the segmentation error.
      Change:
               The bmapilnx will check both the returned shmem2 size
               from MFW and the defined shmem2 size for this bmapilnx
               and will read the shmem2 region up to the smaller size
               of the two.
      Impact:
               NX2 10G NICs.


Version 6.18.2 (Nov 05, 2012)
-----------------------------
   Enhancements:
   =============
   1. Request: CQ66239
            Add support for BCM5717 C0 NIC with new device ID.
      Change:
            Added support for BCM5717 C0 NIC with new device ID.
      Impact:
            BCM5717 C0 NIC.


Version 6.18.1 (Oct 17, 2012)
-----------------------------
   Enhancements:
   =============
   1. Request: CQ65976
               Add support for upgrading PHY firmware for 84834
               external PHY. 
      Change:
               Added support for upgrading PHY firmware for 84834
               external PHY. 
      Impact:
               Adapter with 84834 external PHY.


Version 6.18.0 (Oct 12, 2012)
-----------------------------
   Enhancements:
   =============
   1. Request: 
               Add support for BCM57840 NICs. 
      Change:
               Added support for BCM57840 NICs. 
      Impact:
               BCM57840 NICs.

   2. Request: CQ64610
               Add BMAPILNX specific document for release. 
      Change:
               Added BMAPILNX specific document for release. 
      Impact:
               Document.


Version 6.17.50 (Oct 01, 2012)
------------------------------
   Fixes:
   ======
   1. Problem: CQ65355
               There's a delay in displaying NIC information from
               'esxcfg-nics -l' command for NX2 10G NICs in ESXi
               system.
      Cause:
               The bnx2x driver reset the NIC due to 'Parity Error'
               on PCI bus.  The error was caused by bmapilnx reading
               register from invalid address.
      Change:
               The bmapilnx will check for the size of memeory region
               and make sure reading register from valid address.
      Impact:
               NX2 10G NICs.


Version 6.17.4 (Sep 04, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ65433
               FwUpgNx1 for ESXi did not work in Interactive
               Mode.  The 'Unknow Input Problem" error was
               encountered and the program exited immediately.
      Cause:
               The FwUpgNx1 for ESXi could not get the Input
               command correctly due to bug in bmapilnx.
      Change:
               The bmapilnx bug is fixed and the command library
               in FwUpgNx1 can parse the command correctly in
               Interactive Mode..
      Impact:
               FwUpgNx1 for ESXi in Interactive Mode.

   Note: This version was released for ESXi only.


Version 6.17.3 (Aug 28, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ65378
               The LED diagnostic test does not work for
               BCM57810 NIC in MF mode.
      Cause:
               The ioctl to bnx2x driver to run the LED
               diagnostic test failed.
      Change:
               The bmapilnx will issue ioctl to run the
               LED diagnostic test for all the devices on
               the same physical port.
      Impact:
               BmapiTestLEDsEx API.


Version 6.17.2 (Aug 24, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: 
               In retrieving DCBX information using DCBNL, 
               there is an issue.
      Cause:
               Incorrect checking was done in retrieving DCBX 
               information using DCBNL.
      Change:
               Fixed incorrect checking.
      Impact:
               BmapiGetDcbxParams API.


Version 6.17.1 (Aug 20, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ65200
               Unable to read iPXE image version from NIC 
               using BMAPI function call.
      Cause:
               BmapiGetFirmwareInfo failed to retrieve
               correct version
      Change:
               Fixed BmapiGetFirmwareInfo API to get
               correct iPXE version
      Impact:
               BmapiGetFirmwareInfo API


Version 6.17.0 (Aug 15, 2012)
-----------------------------


Version 6.16.2 (Aug 13, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ63905
               Bmapilnx did not pick the FCoE host that
               was online if multiple FCoE hosts exist.
      Cause:
               Bmapilnx did not check the FCoE port state
               before returning the FCoE service name to
               the application. 
      Change:
               Bmapilnx will check the FCoE port state
               and pick the first FCoE host that has
               'online' port state. 
      Impact:
               BmapiGetServiceName for FCoE device.


Version 6.16.1 (Aug 10, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: 
               Unable to set DCBX params on Linux
      Cause:
               Did not handle the new member of the
               DCBX Params data structure correctly. 
      Change:
               Handling the new member of the data 
               structure correctly.
      Impact:
               BM_DCBX_PARAMS related API.


Version 6.16.0 (Aug 08, 2012)
-----------------------------
   Enhancements:
   =============
   1. Request: 
               Add support to indicate whether DCBX 
               params are retrieved using DCBNL/IOCTL. 
      Change:
               As Requested.
      Impact:
               BM_DCBX_PARAMS related API.

   Fixes:
   ======
   1. Problem: CQ65006
               The BmapiRetrieveLinkStatusEx API returned
               BMAPI_DRIVER_NOT_LOADED after the device was
               brought up by user.
      Cause:
               The bmapilnx did not get the new device status
               after it was brought up by user. 
      Change:
               The bmapilnx will get the new device status when
               processing the BmapiRetrieveLinkStatusEx. 
      Impact:
               BmapiRetrieveLinkStatusEx and BmapiRetrieveMultiLinkStatus
               APIs.

   2. Problem:
               The BmapiSetMBAParams API can't set the MBA
               parameters correctly for port2/3 of BCM5719 NIC.
      Cause:
               The bmapilnx did not retrieve/set the MBA
               parameters in the NVRAM correctly. 
      Change:
               The bmapilnx will retrieve/set the MBA
               parameters in the NVRAM correctly. 
      Impact:
               The BmapiGetMBAParams and BmapiSetMBAParams APIs
               for port2/3 of BCM5719 NIC.


Version 6.15.8 (Aug 01, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ64870
               "DCBX overwrite settings" is not handled
               correctly.
      Cause:
               Driver did not handle this feature using 
               DCBNL. 
      Change:
               This feature is supported by bmapilnx. 
      Impact:
               BM_DCBX_PARAMS related API.


Version 6.15.7 (Jul 27, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ63826
               The BCM57800 1G NIC was displayed as the 10G NIC.
      Cause:
               The bmapilnx did not match the PCI IDs correctly
               for the device.
      Change:
               The bmapilnx will match all the PCI IDs in order
               to get the correct device title/description.
      Impact:
               BCM57800 NICs.


Version 6.15.6 (Jul 25, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ64102
               The "Local Machine Willing" field related 
               change is not taking place.
      Cause:
               PGID and Bandwidth were not being set correctly.
      Change:
               PGID and Bandwidth are set correctly.
      Impact:
               BM_DCBX_PARAMS related API.


Version 6.15.5 (Jul 18, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ64687
               The network devices were not returned by bmapilnx
               in VMware ESX 4.1 system.
      Cause:
               The Bmapilnx tried to excluded bridge/virtual devices
               in XEN/KVM Linux, but the algorithm did not work
               in VMware ESX 4.1 system.
      Change:
               The Bmapilnx will identify the VMware ESX 4.1 system
               and does not apply the algorithm to it.
      Impact:
               The VMware ESX 4.1.

   2. Problem: CQ63993
               The bmapilnx did not return the AFEX profiles correctly
               for BCM57712 NIC.
      Cause:
               The Bmapilnx did not collect the Enable/Disable status
               of each AFEX profile correctly.
      Change:
               The Bmapilnx will collect the Enable/Disable status of
               each AFEX profile correctly.
      Impact:
               BmapiGetNivPortProfile API.

   3. Problem: CQ64586
               'Reset' command from LnxFwUpg did not work if
               the device was controlled by NetworkManager.
      Cause:
               The Bmapilnx used ifup/ifdown to reset the device
               and they did not work correctly if the device
               is controlled by NetworkManager.
      Change:
               The Bmapilnx will use NetworkManager to reset if
               the device is controlled by NetworkManager.
      Impact:
               BmapiEnableDevice API.


Version 6.15.4 (Jul 13, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ63321
               The Bmapilnx returns bridge/virtual device to the
               application in XEN/KVM environment.  It should
               only return physical Ethernet devices.
      Cause:
               The Bmapilnx did not validate the devices before
               including them in the device list.
      Change:
               The Bmapilnx will validate the devices before
               including them in the device list.
      Impact:
               The enumerated Ethernet devices returned to the
               application.

   2. Problem: CQ64444
               The Bmapilnx did not return the iSCSI MAC address
               correctly for port0 of NX2 1G NICs.
      Cause:
               The Bmapilnx returned the L2 MAC address instead.
      Change:
               The Bmapilnx will return the iSCSI MAC address.
      Impact:
               The iSCSI MAC address for port0 of NX2 1G NICs.

   3. Problem: CQ63923
               The PFC related DCBX changes do not take effect 
               when changes are made subsequently after first 
               successful change.
      Cause:
               The DCBNL re-negotiation was hanging.
      Change:
               Changed from unsolicited notification to 
               solicited request.
      Impact:
               BM_DCBX_PARAMS related API.

   4. Problem: CQ63883
               The BACS GUI unexpectedly closes the connection 
               when attempt is made to reconnect to it after 
               restarting the CIM srever  on the remote host.
      Cause:
               The DCBNL re-negotiation was hangind.
      Change:
               Changed from unsolicited notification to 
               solicited request.
      Impact:
               BM_DCBX_PARAMS related API.

   5. Problem: CQ64453
               The bmapilnx crashed when BACS tried to retrieve
               information from the bridge/virtual devices in
               the XEN/KVM Linux environment.
      Cause:
               These bridge/virtual devices are not physical
               Ethernet devices and lots of device information
               were not collected/set correctly.
      Change:
               The bmapilnx will not report the bridge/virtual
               devices to the application in the XEN/KVM Linux
               environment.
      Impact:
               The enumerated Ethernet devices returned to the
               application.


Version 6.15.3 (Jun 21, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ63814
               The Bmapilnx did not return correct information
               in BmapiGetBRCMNicInfoEx API when the device is
               down.
      Cause:
               The Bmapilnx did not return BMAPI_DRIVER_NOT_LOADED
               error code when the device was down in the
               BmapiGetBRCMNicInfoEx API and that caused the
               application to use the incorrect information.
      Change:
               The Bmapilnx will return BMAPI_DRIVER_NOT_LOADED
               error code when the device was down in the
               BmapiGetBRCMNicInfoEx API.
      Impact:
               BmapiGetBRCMNicInfoEx API.


Version 6.15.2 (Jun 18, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ63697
               Interrupt diagnostic failed for NX2 10G NIC
               in MF mode.
      Cause:
               The FwUpg did not process the interrupt diagnostic
               test correctly for NX2 10G NIC in MF mode.
      Change:
               The FwUpg will process the interrupt diagnostic
               test correctly for NX2 10G NIC in MF mode.
      Impact:
               Interrupt and EEPROM diagnostic tests for NX2 10G
               NIC in MF mode.


Version 6.15.1 (Jun 15, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ63746
               DCBX information shows incorrect FCoE 
               priority.
      Cause:
               The priorities were passed in incorrect
               format.
      Change:
               Passing the priorities in correct format.   
      Impact:
               BM_DCBX_PARAMS related API.


Version 6.15.0 (Jun 01, 2012)
-----------------------------
   Enhancements:
   =============
   1. Request: CQ63499
               Add support for BCM57811 NICs.
      Change:
               Added support for BCM57811 NICs.
      Impact:
               BCM57811 NICs.

   2. Request:
               Add BmapiCommitDcbxCfgParams API.
      Change:
               Added BmapiCommitDcbxCfgParams API.
      Impact:
               BmapiCommitDcbxCfgParams API.

   3. Request: CQ63442
               iSCSI Boot "IPv6" option should be
               removed/greyed out if AUT only supports
               IPv4 iSCSI boot (vice versa).
      Change:
               Add information to indicate iSCSI boot FW
               support for IPv4 and IPv6.
      Impact:
               BM_FW_INFO, BM_FW_INFO_5706, BM_FW_INFO_57710

   Fixes:
   ======
   1. Problem: CQ62673
               The disable/enable ETS DCBX parameter 
               configuration does not take effect.
      Cause:
               Applying DCBX parameters on all functions  
               of a port fails. It should be applied to 
               one function only.
      Change:
               Apply DCBX parameters to one function only.   
      Impact:
               BM_DCBX_PARAMS related API.

   2. Problem: CQ62674
               The disable/enable PFC DCBX parameter 
               configuration does not take effect.
      Cause:
               Applying DCBX parameters on all functions  
               of a port fails. It should be applied to 
               one function only.
      Change:
               Apply DCBX parameters to one function only.   
      Impact:
               BM_DCBX_PARAMS related API.


Version 6.14.3 (May 18, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem:
               Bmapilnx did not return correct values of the mf_mode
               and function_per_port in BmapiGetBRCMNicInfoEx API if
               the NIC is in AFEX mode.
      Cause:
               The bmapilnx did not retrieve the values correctly if
               the NIC is in AFEX mode.
      Change:
               The bmapilnx will retrieve the values correctly when
               the NIC is in AFEX mode.
      Impact:
               NX2 10G NICs in AFEX mode.

   2. Problem: CQ63059
               The BmapiGetFirmwareInfo API does not return NCSI firmware
               version correctly for BCM5717 NIC after the bootcode in
               the NVRAM was upgraded to v1.54.
      Cause:
               The bmapilnx did not return the NCSI firmware version
               in BmapiGetFirmwareInfo API when the bootcode version
               is not validated correctly.
      Change:
               The bmapilnx will validate the bootcode version correctly
               and return the NCSI firmware version.
      Impact:
               The BmapiGetFirmwareInfo API for NX1 NICs.

   3. Problem: CQ62445
               DCBX parameters are listed as not opertional even though 
               they are operational.
      Cause:
               DCBX paramters are retrieved using DCBNL interface and this
               feature was not implemented.
      Change:
               The bmapilnx implemented the feature. 
      Impact:
               BM_DCBX_PARAMS related API.


Version 6.14.2 (Apr 18, 2012)
-----------------------------
   Enhancements:
   =============
   1. Request:
               Re-arrange source files to better support the
               DCBNL interface.
      Change:
               Re-arranged source files to better support the
               DCBNL interface.
      Impact:
               BM_DCBX_PARAMS related API.


Version 6.14.1 (April 05, 2012)
-------------------------------
   Enhancements:
   =============
   1. Request:
               Add 'dcb_current_oper_state_bitmap' support in
               BM_DCBX_PARAMS.
      Change:
               Add 'dcb_current_oper_state_bitmap' support in
               BM_DCBX_PARAMS.
      Impact:
               BM_DCBX_PARAMS related API.

   2. Problem:
               CQ62462: Remove "ape_global_mutex_reset" BIT in
               Linux FW upgrade utility
      Change:
               Workaround by resetting mutex at lower level.
      Impact:
               Suspend and resume API for 5718, 5719 and 5720.


Version 6.14.0 (Mar 29, 2012)
-----------------------------
   Enhancements:
   =============
   1. Request:
               Add 'flow_ctrl' in BM_LINK_STATUS_EX.
      Change:
               Add 'flow_ctrl' in BM_LINK_STATUS_EX.
      Impact:
               BM_LINK_STATUS_EX related API.

   2. Request:
               Change FLR to per device feature.
      Change:
               Get/set FLR in share feature block in NVRAM.
      Impact:
               FLR APIs.

   3. Request:
               Add 'prevent_fcoe' in BM_NIC_PART_CFG and BM_NIV_CFG.
      Change:
               Add 'prevent_fcoe' in BM_NIC_PART_CFG and BM_NIV_CFG.
      Impact:
               BM_NIC_PART_CFG and BM_NIV_CFG related API.

   4. Request:
               Add 'BmapiRetrieveMultiLinkStatus' API.
      Change:
               Add 'BmapiRetrieveMultiLinkStatus' API.
      Impact:
               'BmapiRetrieveMultiLinkStatus' API for NX1/NX2 NICs.


Version 6.13.3 (Mar 23, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ62203
               FwUpg tool show 'Initialization failure' when
               all devices in the system are down and no device
               is listed.
      Cause:
               In bmapilnx v6.13.0, it allows the FwUpg tool to
               lock the device only when the device is up.
      Change:
               The bmapilnx will allow the FwUpg tool to lock the
               device when the device is down as before, v6.12.4
               or earlier.
      Impact:
               NX1 and NX2 NICs.


Version 6.13.2 (Mar 21, 2012)
-------------------------------
   Enhancements:
   ======
   1. Request: CQ62189
               Enhanced PHY firmware upgrade algorithm to
               verify the proper programming into SPIROM.
      Change:
               Enhanced PHY firmware upgrade algorithm to
               verify the proper programming into SPIROM.
      Impact:
               84823 and 84833 PHYs.


Version 6.13.1 (Mar 16, 2012)
-------------------------------
   Enhancements:
   ======
   1. Request:
               CQ55817: Linux Support for DCBX using DCBNL.
      Change:
               Added Linux support for DCBX using DCBNL.
      Impact:
               NX2 10G NICs.


Version 6.13.0 (Feb 27, 2012)
-----------------------------
   Enhancements:
   ======
   1. Request:
               CQ60346: Add required support for AFEX.
      Change:
               Add BmapiGetNivCfg(), BmapiSetNivCfg() and
               BmapiGetNivPortProfile().
      Impact:
               E2 and later devices

   2. Request:
               Add support for FLR (Function Level Reset)
               configuration.
      Change:
               Add BmapiGetFLRCfg() and BmapiSetFLRCfg().
      Impact:
               E2 and later devices

   3. Request:
               Add 'phy_link_speed_mbps' in BM_LINK_STATUS_EX.
      Change:
               Add 'phy_link_speed_mbps' in BM_LINK_STATUS_EX.
      Impact:
               Link status API

   4. Request:
               Add 'prevent_fcoe' in BM_MBA_PARAMS.
      Change:
               Add 'prevent_fcoe' in BM_MBA_PARAMS.
      Impact:
               MBA configuration API.


Version 6.12.4 (Jan 20, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ61022
               Segmentation fault when running bmapilnx with
               BCM57810.
      Cause:
               The bmapilnx caused the buffer overflow with
               BCM57810 on some systems.
      Change:
               The bmapilnx will allocate buffer that is big
               enough to process the interrupt information.
      Impact:
               NX2 10G NICs.


Version 6.12.3 (Jan 12, 2012)
-----------------------------
   Enhancements:
   =============
   1. Request:
               Added support for BCM57762, 57766, 57782, and 57786x
               NICs.
      Change:
               Added support for BCM57762, 57766, 57782, and 57786x
               NICs.
      Impact:
               BCM57762, 57766, 57782, and 57786x NICs.

   Fixes:
   ======
   1. Problem: CQ60548
               The fcoe driver version was displayed as 0.0.0.0.
      Cause:
               The bmapilnx did not parse the version message from
               bnx2fc driver correctly.
      Change:
               The bmapilnx does parse the version message from
               bnx2fc driver correctly.
      Impact:
               FCoE driver version for NX2 10G NIC.


Version 6.12.2 (Jan 05, 2012)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ60074
               The phy_link_speed_mbps in BmapiGetBRCMNicInfoEx was
               returned 0.
      Cause:
               The bmapilnx did not support phy_link_speed_mbps in
               BmapiGetBRCMNicInfoEx.
      Change:
               The bmapilnx will support phy_link_speed_mbps in
               BmapiGetBRCMNicInfoEx.
      Impact:
               BmapiGetBRCMNicInfoEx API for NX2 10G NIC.


Version 6.12.1 (Dec 22, 2011)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ60072
               The bmapilnx returns default value of SpeedDuplex parameter
               that is not supported in NX2 10G NIC.
      Cause:
               The bmapilnx returns default value of SpeedDuplex without
               checking the current supported values.
      Change:
               The bmapilnx will return the default value of SpeedDuplex
               based on the supported values returned by Ethtool.
      Impact:
               SpeedDuplex parameter for NX2 10G NIC.


Version 6.12.0 (Dec 14, 2011)
-----------------------------
   Enhancements:
   =============
   1. Request:
               Add support for BmapiGetLicenseKey API for NX2 10G NIC.
      Change:
               Add support for BmapiGetLicenseKey API for NX2 10G NIC.
               Only the 'Active License Key' type was supported.
      Impact:
               BmapiGetLicenseKey API for NX2 10G NIC.

   2. Request:
               Add support for FCoE mac address, WWNN, and WWPN for NX2
               10G NICs in BM_BRCM_ADAPTER_INFO_EX.
      Change:
               Add support for FCoE mac address, WWNN, and WWPN for NX2
               10G NICs in BM_BRCM_ADAPTER_INFO_EX.
      Impact:
               BM_BRCM_ADAPTER_INFO_EX

   3. Request:
               Add PHY port default configuration.
      Change:
               Add 'port_default_cfg' in BM_BRCM_ADAPTER_INFO_EX.
      Impact:
               BM_BRCM_ADAPTER_INFO_EX

   Fixes:
   ======
   1. Problem:
               The bmapilnx returns BMAPI_MEMALLOC = 1 when diagnostic test
               API, such as BmapiTestLoopBackEx, failed.  It returns
               BMAPI_OK = 0 when diagnostic test API succeeded.
      Cause:
               The bmapilnx returns the value that is used by its internal
               function of the diagnostic test.
      Change:
               The bmapilnx will return a more specific error code for the
               specific diagnostic test.
      Impact:
               Diagnostic test APIs.


Version 6.11.4 (Sep 01, 2011)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ58289
               The bmapilnx could not work in some Linux systems.
      Cause:
               The required DLL is not supported in the default
               DLL search path.
      Change:
               The bmapilnx will find the required DLL in a
               different DLL search path.
      Impact:
               The bmapilnx in some Linux systems.


Version 6.11.3 (Aug 22, 2011)
-----------------------------
   Enhancements:
   =============
   1. Request:
               Updated to new Build System and generate
               the binary files for x86 and x86_64.
      Change:
               Modifed Makefile to generate the binary files for
               x86 and x86_64 to support both Red Hat 5/6 and
               SuSE 10/11 systems.
      Impact:
               New binary files for x86 and x86_64 system.


Version 6.11.2 (Jul 19, 2011)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ56684
               The bmapilnx caused 'segmenation fault' when the device
               in the system is closed by 'ifconfig <dev> down' command.
      Cause:
               The bmapilnx can't access the register of the device when
               the device is closed/in D3 state.
      Change:
               The bmapilnx will access the register only when the device
               is opened.
      Impact:
               BmapiInitializeEx() API for NX1 and NX2 NICs.

   2. Problem: CQ56923
               The system halted when running FwUpg tool in RH5.7-RC1 on
               the Power PC system with the in-box tg3 driver on BCM5718.
      Cause:
               The bmapilnx tried to access the MII register through tg3
               driver.  The in-box tg3 driver would access the MII register
               even when the device is in D3 state which will cause the
               system to halt.
      Change:
               The bmapilnx will access MII register through ioctl only
               when the device is up.
      Impact:
               BmapiInitializeEx() API for NX1 and NX2 NICs.


Version 6.11.1 (Jul 14, 2011)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ57011
               The BmapiWritePhyFirmware API did not upgrade the
               PHY firmware correctly for BCM84833 external PHY.
      Cause:
               The bmapilnx did not program the PHY firmware
               correctly for the BCM84833 external PHY.
      Change:
               The bmapilnx programs the PHY firmware
               correctly for the BCM84833 external PHY.
      Impact:
               BmapiWritePhyFirmware API for BCM84833 external PHY.


Version 6.11.0 (Jul 06, 2011)
-----------------------------
   Enhancements:
   =============
   1. Request:
               Added support for BmapiGetLldpParams, BmapiGetDcbxParams
               BmapiGetDcbNvramCfg, BmapiSetDcbNvramCfg, and
               BmapiSetDcbxCfgParams APIs.
      Change:
               Added support for BmapiGetLldpParams, BmapiGetDcbxParams
               BmapiGetDcbNvramCfg, BmapiSetDcbNvramCfg, and
               BmapiSetDcbxCfgParams APIs.
      Impact:
               New BMAPI APIs for 10G NX2 NICs.

   2. Request:
               Added support for BCM57800/57810/57840 in NPAR mode.
      Change:
               Added support for BCM57800/57810/57840 in NPAR mode.
      Impact:
               BCM57800/57810/57840 NICs in NPAR mode.

   Fixes:
   ======
   1. Problem:
               The Bmapilnx could not retrieve MSI information in
               some systems.
      Cause:
               The bmapilnx did not process the PCI config registers
               correctly when retrieving MSI information.
      Change:
               The bmapilnx process the PCI config registers correctly
               when retrieving MSI information.
      Impact:
               All NX1 and NX2 NICs in some systems.


Version 6.10.2 (Jun 17, 2011)
-----------------------------
   Fixes:
   ======
   1. Problem: CQ56070
               The BmapiEnableDevice API will return BMAPI_BOOT_DEV
               error even the device is not used for iSCSI boot.
      Cause:
               The bmapilnx did not set the iSCSI boot status correctly
               for each individual Ethernet device.
      Change:
               The bmapilnx sets the iSCSI boot status correctly now
               for each individual Ethernet device.  However, the
               BmapiEnableDevice API will return BMAPI_BOOT_DEV error
               code if the device is truly used for iSCSI boot.
      Impact:
               BmapiEnableDevice() API.


Version 6.10.1 (May 25, 2011)
----------------------------
   Fixes:
   ======
   1. Problem: CQ55881
               The bmapilnx did not return value of 'has_extended_vpd'
               in BM_FW_INFO_57710 correctly in the BmapiGet57710FwInfo
               API.
      Cause:
               The bmapilnx did not validate the 'Extended VPD' entry
               in the Directory correctly.
      Change:
               The bmapilnx validates the 'Extended VPD' entry in the
               Directory correctly.
      Impact:
               BmapiGet57710FwInfo() API.

   2. Problem:
               The bmapilnx did not handle BmapiGetFirmwareInfo API
               correctly if the latest BMAPI_FW_INFO_VER in BMAPI.h
               was used by application.
      Cause:
               The bmapilnx did not handle BmapiGetFirmwareInfo API
               correctly if the latest BMAPI_FW_INFO_VER in BMAPI.h
               was used by application.
      Change:
               The bmapilnx handles the latest BMAPI_FW_INFO_VER
               correctly in BmapiGetFirmwareInfo API.
      Impact:
               BmapiGetFirmwareInfo() API.


Version 6.10.0 (May 20, 2011)
----------------------------
   Enhancements:
   =============
   1. Request: CQ54183
               Added support for BCM57800/57810/57840.
      Change:
               Added support for BCM57800/57810/57840.
      Impact:
               BCM57800/57810/57840 NICs.


Version 6.9.5 (May 05, 2011)
----------------------------
   Fixes:
   ======
   1. Problem: CQ54916, CQ55233
               FwUpg tool failed in 'phy -ver' and 'phy -upg'
               commands.
      Cause:
               The bmapilnx failed in BmapiGet57710FwInfo() API
               when trying to read NVRAM.
      Change:
               Correct the error when reading NVRAM through ethtool.
      Impact:
               BmapiGet57710FwInfo() API.


Version 6.9.4 (Apr 27, 2011)
----------------------------
   Fixes:
   ======
   1. Problem:
               Fixed issue in writting register in PPC64 system.
      Cause:
               The parameters used to write the value to the register
               of NIC do not work in the PPC64 system.
      Change:
               Use the correct parameters to write the value to the
               register of the NIC.
      Impact:
               'upgrade -bc' command NX1 NICs in PPC64 system.


Version 6.9.3 (Apr 22, 2011)
----------------------------
   Fixes:
   ======
   1. Problem: 54983
               The 'dev' command does not work for BCM57712 with NPAR
               configuration.
      Cause:
               The bmapilnx accidentally set the function ID to 0 for
               some of the devices and caused the 'dev' command failed to
               lock the selected device due to the same function ID.
               The issue was introduced in v6.9.2.
      Change:
               The bmapilnx will set the function ID correctly for each
               device and there's no conflict in locking the selected
               device.
      Impact:
               'dev' command NX2 NICs.


Version 6.9.2 (Apr 15, 2011)
----------------------------
   Enhancements:
   =============
   1. Request:
               Added support for BCM5719/5720.
      Change:
               Added support for BCM5719/5720.
      Impact:
               BCM5719 and BCM5720 NICs.

   Fixes:
   ======
   1. Problem: CQ54641
               The BmapiWriteNicMem API does not work for BCM5771x NICs.
      Cause:
               The bmapilnx did not support the API for the BCM5771x NICs.
      Change:
               The bmapilnx supports the API for the BCM5771x NICs now.
      Impact:
               BmapiWriteNicMem for BCM5771x NICs.


Version 6.9.1 (Apr 04, 2011)
----------------------------
   Fixes:
   ======
   1. Problem:
               The BmapiGetFirmwareInfo API does not work for
               BCM5717/5718 NICs.
      Cause:
               The bmapilnx did not validate the BCM5717/5718
               NICs correctly.
      Change:
               The bmapilnx validates the BCM5717/5718 NICs correctly.
      Impact:
               BmapiGetFirmwareInfo for BCM5717/5718 and BCM57781/
               57785 NICs.


Version 6.9.0 (Mar 21, 2011)
----------------------------
   Enhancements:
   =============
   1. Request:
               Added BmapiSetExtVpd API.
      Change:
               Added BmapiSetExtVpd API.
      Impact:
               NX1 and NX2-10G NICs that support extended VPD.


Version 6.8.2 (Mar 10, 2011)
----------------------------
   Enhancements:
   =============
   1. Request: CQ43917
               Added Linux BMAPI support for IA64 system.
      Change:
               Added Linux BMAPI support for IA64 system.
      Impact:
               IA64 system.

   Fixes:
   ======
   1. Problem: CQ53319
               FwUpg tool got segmentation fault with bmapilnx
               v6.7.4.
      Cause:
               The bmapilnx might pass an incorrect file handle
               to fclose().
      Change:
               The bmapilnx will use the correct file handle for
               fclose() call.
      Impact:
               All NICs during bmapilnx initialization.


Version 6.8.1 (Feb 10, 2011)
----------------------------
   Enhancements:
   =============
   1. Request:
               Return external PHY type in BM_BRCM_ADAPTER_INFO_EX
               structure of BMAPI API.
      Change:
               Return external PHY type in BM_BRCM_ADAPTER_INFO_EX
               structure of BMAPI API.
      Impact:
               BCM577xx NICs.


Version 6.8.0 (Feb 07, 2011)
----------------------------
   Enhancements:
   =============
   1. Request: CQ52644
               Linux BMAPI missing extended VPD stuff.
      Change:
               Added a new API BmapiGetExtVPD.
      Impact:
               BCM577xx NICs.


Version 6.7.12 (Jan 07, 2011)
----------------------------
   Fixes:
   ======
   1. Problem: CQ52024, CQ52030
               The NVRAM was corrupted after updating MBA parameters
               using BACS4.
      Cause:
               The bmapilnx did not write the data into NVRAM in the
               correct order.
      Change:
               The bmapilnx will write the data into NVRAM in the
               correct order.
      Impact:
               BCM5771x NIC.


Version 6.7.11 (Dec 10, 2010)
----------------------------
   Fixes:
   ======
   1. Problem: CQ51166
               The fwupg tool will hang in the system with BCM57712
               NIC configured in Nic-Partition mode.
      Cause:
               The bmapilnx caused the error when trying to read
               information in Shared Memory from the BCM57712 NIC
               in Nic-Partition mode.
      Change:
               The bug is corrected and the bmapilnx can read the
               information correctly.
      Impact:
               BCM57712 NIC in Nic-Partition mode.


Version 6.7.10 (Dec 02, 2010)
----------------------------
   Enhancements:
   =============
   1. Request:
               Added BmapiGetBRCMNicStatisticsEx() and 
               BmapiGetNicStatistics64Ex() APIs.
      Change:
               Added the requested APIs.
      Impact:
               BmapiGetBRCMNicStatisticsEx() and 
               BmapiGetNicStatistics64Ex() APIs for both
               NX1 and NX2 NICs..


Version 6.7.9 (Nov 16, 2010)
----------------------------
   Fixes:
   ======
   1. Problem:
               The bmapilnx failed to detect the multi-function mode
               for the BCM57712 NIC.
      Cause:
               The field checked by bmapilnx has a default value when
               the BCM57712 is configured to the multi-function mode
               with Nic-Partition.
      Change:
               The bmapilnx will check the multi-function mode without
               using the field.
      Impact:
               NIC in multi-function mode.

Version 6.7.8 (Nov 12, 2010)
----------------------------
   Fixes:
   ======
   1. Problem:
               The bmapilnx failed in BmapiInitDiag() with BCM57712
               NIC in multi-function mode.
      Cause:
               The bmapilnx did not handle the locking correctly
               for NIC in multi-function mode.
      Change:
               The locking issue is corrected for NIC in multi-
               function mode.
      Impact:
               NIC in multi-function mode.


Version 6.7.7 (Nov 04, 2010)
----------------------------
   Fixes:
   ======
   1. Problem: 50825
               The FwUpg tool could not upgrade bootcode of BCM57765X
               NIC.
      Cause:
               The bmapilnx did not return the ID information correctly.
      Change:
               The bmapilnx return the ID information correctly.
      Impact:
               'upgrade -bc' command for NX1 devices.

   2. Problem: 50827
               The FwUpg tool could not restore NVRAM content from dump
               image file for BCM57765X
               NIC.
      Cause:
               The bmapilnx did not return the ID information correctly.
      Change:
               The bmapilnx return the ID information correctly.
      Impact:
               'restorenvram' command for NX1 devices.


Version 6.7.6 (Oct 29, 2010)
----------------------------
   Enhancements:
   =============
   1. Request:
               Added performance enhancement in BmapiGetPhyNic() API.
      Change:
               Added performance enhancement in BmapiGetPhyNic() API.
      Impact:
               BmapiGetPhyNic() API for both NX1 and NX2 NICs.

   Fixes:
   ======
   1. Problem:
               The bmapilnx did not return MTU of iSCSI/FCoE device
               correctly.
      Cause:
               The bmapilnx did not set the MTU of iSCSI/FCoE device.
      Change:
               The bmapilnx will set the MTU of iSCSI/FCoE device.
      Impact:
               Retrieve MTU of iSCSI/FCoE device.


Version 6.7.5 (Oct 22, 2010)
----------------------------
   Enhancements:
   =============
   1. Request:
               Added support to BACS4 CIM Provider for Linux.
      Change:
               Added support to BACS4 CIM Provider for Linux.
      Impact:
               All new BMAPI APIs for the NX1 and NX2 NICs.

   Fixes:
   ======
   1. Problem: CQ48524
               The FwUpg tool could not upgrade the PXE firmware on
               BCM57760 NIC.
      Cause:
               The BCM57760 NIC was detected as a non-PCIE device in
               bmapilnx and the status was returned to FwUpg tool.
      Change:
               The BCM57760 NIC can be detected as a PCIE device now.
      Impact:
               'upgrade -mba' command for all NX1 devices.


Version 6.7.4 (Aug 11, 2010)
----------------------------
   Enhancements:
   =============
   1. Request:
               Added support to BCM84823, BCM84833 PHY.
      Change:
               Added support to BCM84823, BCM84833 PHY.
      Impact:
               BCM5771x NIC with BCM84823, BCM84833 PHY.

   2. Request:
               Added support to dual PHY.
      Change:
               Added support to dual PHY.
      Impact:
               BCM5771x NIC with dual PHY.

   Fixes:
   ======
   1. Problem:
               The bmapilnx has 'memory leak' when doing
               diagnostic test.
      Cause:
               The bmapilnx did not free all the allocated
               memory during diagnostic test.
      Change:
               The bmapilnx now frees all the allocated memory.
      Impact:
               Diagnostic tests.


Version 6.7.3 (Jun 17, 2010)
----------------------------
   Enhancements:
   =============
   1. Request: CQ48276
               Added support to BCM57712 NICs.
      Change:
               Added support to BCM57712 NICs.
      Impact:
               BCM57712 NICs.

   Fixes:
   ======
   1. Problem:
               The bmapilnx did not reported NIC information
               correctly in ESXi system.
      Cause:
               The bmapilnx tried to use 'command' to collect NIC
               information that is not allowed in ESXi system.
      Change:
               The bmapilnx will use different way to collect NIC
               information.
      Impact:
               Application using bmapilnx in ESXi system.


Version 6.7.2 (May 20, 2010)
----------------------------
   Fixes:
   ======
   1. Problem: CQ47827
               When NetworkManager is in use, DHCP was not correctly
               detected.
      Cause:
               NetworkManager does not use the configuration files in
               /etc/sysconfig which were parsed for this information.
      Change:
               As with DHCPv6, match the interface/address pair with
               an unexpired lease in /var.  Currently supported
               clients/locations are:
               ISC dhclient: /var/lib/dhcp/dhclient.leases
                             /var/lib/dhclient/dhclient-ethX.leases
               DHCPCD        /var/lib/dhcpcd/dhcpcd-ethX.info
      Impact:
               Programs using the dhcp_enabled flag.


Version 6.7.1 (Apr 23, 2010)
----------------------------
   Fixes:
   ======
   1. Problem:
               The detection of DHCPv6 being enabled on an interface
               was based on an undocumented setting in the ifcfg-*
               file in /etc/sysconfig.
      Cause:
               Red Hat has not documented an official method to
               enable DHCPv6 on an interface.
      Change:
               Match the address with a current lease in
               /var/lib/dhcpv6.
      Impact:
               Programs using the additional DHCP information for
               IPv6 addresses.

   2. Problem:
               Writing to APE space would fail on some systems.
      Cause:
               Using memcpy() to write to PCI mapped addresses
               fails under some circumstances.
      Change:
               Use 32-bit stores to write to APE memory.
      Impact:
               Writing to the APE should now work on all
               supported systems.


Version 6.7.0 (Apr 02, 2010)
----------------------------
   Enhancements:
   =============
   1. Request:
               Added support for APE related management functions.
      Change:
               The following functions were added:
                   BmapiGetMgmtProcessors()
                   BmapiGetMgmtEnableState()
                   BmapiSetMgmtEnableState()
                   BmapiGetMgmtConfigLength()
                   BmapiGetMgmtConfig()
                   BmapiSetMgmtConfig()
                   BmapiGetMgmtOTPKeys()
                   BmapiAssertMgmtEvents()
                   BmapiGetMgmtDataLength()
                   BmapiGetMgmtData()
                   BmapiSetMgmtData()
                   BmapiCreateMgmtData()
                   BmapiGetMgmtSharedMem()
                   BmapiGetMgmtWebDataLength()
                   BmapiGetMgmtWebData()
                   BmapiSetMgmtWebData()
                   BmapiCreateMgmtWebData()
      Impact:
               APE-Enabled NX1 NICs.

   2. Request:
               Add management firmware information to BM_FW_INFO.
      Change:
               Incremented BMAPI_FW_INFO_VER and add the mgmt_ver, flags,
               and is_otp_selfboot members to BM_FW_INFO.
      Impact:
               BMAPI API.

   3. Request:
               Support IPv6.
      Change:
               Incremented BMAPI_ADAPTER_INFO_EX_VER and add the ipv6,
               gateway_v6, and ipv6_flags members to BM_ADAPTER_INFO_EX.
      Impact:
               BMAPI API.


Version 6.6.5 (Feb 11, 2010)
---------------------------------

   Fixes:
   =====
   1. Problem: CQ45871
               The lnxfwupg can't display the firmware version
               correctly for BCM57760 NICs in 'dir' command.
      Cause:
               The bmapilnx did not returned the correct NIC
               information back to lnxfwupg.
      Change:
               The correct NIC information is returned by bmapilnx.
      Impact:
               All commands for BCM57760/80/90 NICs.


Version 6.6.4 (Feb 09, 2010)
---------------------------------

   Fixes:
   =====
   1. Problem: CQ45298
               The 'asfscfg -import' command caused the error 
               'Device is not ASF-configured' on BCM57765 NIC.
      Cause:
               FW version was reset to start from v1.0 instead of
               continue from previous generation of devices.
      Change:
               Detect the condition and handle properly.
      Impact:
               ASF configuration.


Version 6.6.3 (Jan 27, 2010)
---------------------------------

   Fixes:
   =====
   1. Problem: CQ45291
               The bmapilnx returned the error code 28, 
               BMAPI_DRIVER_COMMUNICATE_ERROR, when using the 
               'asfscfg -Enable' command in a SuSE SLED11 system.
      Cause:
               The error was issued by bmapilnx after it saved the
               ASF configuration into NVRAM and failed the 'ifdown'
               command to restart the device.  The SLED11 system was
               configured to use 'Network Manager' by default and
               was not allowed to use 'ifup/ifdown' commands to
               manipulate the device.
      Change:
               The returned error code was changed to 201,
               BMAPI_REBOOT_REQUIRED, which can describe the issue
               better.  User can manually reset the NIC by using
               'ifconfig down/up' commands, unload/reload driver,
               or reboot the system.
      Impact:
               Any asfscfg commands that require to reset the NIC.

   2. Problem: CQ45298
               The 'asfscfg -import' command caused the error 
               'Unknown device 0x16b4' on BCM57765 NIC.
      Cause:
               The BCM57765 NIC was not supported in bmapilnx v6.6.2.
      Change:
               Added support for BCM57761/57765/57781/57785/
               57791/57795 NICs.
      Impact:
               BCM57761/57765/57781/57785/57791/57795 NIC.


Version 6.6.2 (Nov 30, 2009)
---------------------------------

   Fixes:
   =====
   1. Problem: CQ43538
               The bmapilnx caused "grep: write error: Broken pipe" error
               when running PEDiag in RedHat 5.4 system.
      Cause:
               The 'grep' command was set up to output its results to a
               pipe stream.  The pipe was closed before the complete results
               from the 'grep' command could be written to the pipe.
      Change:
               The pipe is closed only after the complete results from the
               'grep' command were written to the pipe.
      Impact:
               PEDiag test.


Version 6.6.1 (Nov 18, 2009)
---------------------------------

   Fixes:
   =====
   1. Problem: CQ43383
               The lnxfwnx2 application got 'Initialization failure'
               error with BCM5709 participating in a team.
      Cause:
               The bmapilnx can't complete the initialization due to
               the same current MAC addresses assigned to the dual
               ports of BCM5709.  Adapters participating in a team
               were assigned the same MAC address.
      Change:
               The bmapilnx used a different way to initialize the
               dual ports of the BCM5709.
      Impact:
               Dual-port NICs participating in team.

   2. Problem: CQ44398
               The lnxfwnx2 application got 'Initialization failure'
               error with BCM57711 participating in a team.  The
               'lnxfwnx2 <MAC address> crc' command resulted error
               'Adapter not found'.
      Cause:
               The bmapilnx can't complete the initialization due to
               the same current MAC addresses assigned to the dual
               ports of BCM57711.  Adapters participating in a team
               were assigned the same MAC address.
      Change:
               The bmapilnx used a different way to initialize the
               dual ports of the BCM57711.
      Impact:
               Dual-port NICs participating in team.


Version 6.6.0 (Aug 31, 2009)
---------------------------------

   Enhancements:
   =============
   1. Request:
               Added support to return PHY ID for NX1 NICs.
      Change:
               Added support to return PHY ID for NX1 NICs.
      Impact:
               All NX1 NICs.

   Fixes:
   =====
   1. Problem: CQ43330
               The application might crash when bmapilnx tried to
               detect the iSCSI Boot status.
      Cause:
               The pointer passed to the function to detect the iSCSI
               Boot status can be out of boundary and became invalid.
      Change:
               Make sure the pointer passed to the function is within
               the boundary and valid.
      Impact:
               All NX1 and NX2 NICs.


Version 6.5.7 (Jul 02, 2009)
---------------------------------

   Fixes:
   =====
   1. Problem: CQ42407
               The FwUpg tool can not show the device name of
               BCM5785 with AC131 PHY.
      Cause:
               Bmapilnx did not support the BCM5785 Fast Ethernet
               NIC.
      Change:
               Bmapilnx supports the BCM5785 Fast Ethernet NIC now.
      Impact:
               BCM5785 Fast Ethernet NIC.


Version 6.5.6 (Jun 30, 2009)
---------------------------------

   Fixes:
   =====
   1. Problem: CQ42352
               The bmapilnx crashed during initialization in the
               PPC64 system.
      Cause:
               Bmapilnx crashed when trying to find out the iSCSI
               boot status from the PPC64 system.
      Change:
               Bmapilnx does not need to find out the iSCSI boot
               status from the PPC64 system since the feature is
               not supported in the PPC64 system.
      Impact:
               All adapters.


Version 6.5.5 (Jun 26, 2009)
---------------------------------

   Fixes:
   =====
   1. Problem:
               FwUpg tool failed to upgrade the external PHY firmware
               for some adapters with BCM8727 PHY.
      Cause:
               Bmapilnx did not handle the external PHY type correctly.
      Change:
               Bmapilnx handles the external PHY type correctly.
      Impact:
               Some adapters with BCM8727 PHY.


Version 6.5.4 (Jun 25, 2009)
---------------------------------

   Enhancements:
   =============
   1. Request:
               Added support to BCM5785.
      Change:
               Added support to BCM5785.
      Impact:
               BCM5785 adapter.

   2. Request:
               Added support to external PHY firmware upgrade.
      Change:
               Added support to external PHY firmware upgrade.
      Impact:
               External PHY firmware upgrade.


Version 6.5.3 (Jun 05, 2009)
---------------------------------

   Fixes:
   =====
   1. Problem: CQ39514
               The "write error: Broken pipe" error message was displayed
               when running diagnostic tests for bonding NICs.
      Cause:
               Bmapilnx treated the master bonding NIC as a physical NIC and
               tried to collect information from it and caused the error.
      Change:
               Bmapilnx will exclude any master bonding NIC when collecting
               information for all physical NICs.
      Impact:
               System with bonding adapters.


Version 6.5.2 (May 29, 2009)
---------------------------------

   Fixes:
   =====
   1. Problem: CQ40879
               Some BCM5708 NICs were not detected by FwUpg tool in
               the ESX4.0 system.
      Cause:
               Bmapilnx did not interpret the bus information of these NICs
               correctly.
      Change:
               Bmapilnx interprets the bus information of these NICs
               correctly now.
      Impact:
               All adapters.


Version 6.5.1 (May 20, 2009)
---------------------------------

   Enhancements:
   =============
   1. Request: CQ39974
               Added support to BCM5761S.
      Change:
               Added support to BCM5761S.
      Impact:
               BCM5761S adapter.

   Fixes:
   =====
   1. Problem: CQ40058
               Bmapilnx failed to return the correct result of
               MII Register Test.
      Cause:
               Bmapilnx did not handle the returned error by driver
               correctly.
      Change:
               Bmapilnx handles the returned error by driver correctly
               and return it to the application.
      Impact:
               All adapters.


Version 6.5.0 (Feb 27, 2009)
---------------------------------

   Enhancements:
   =============
   1. Request: CQ38776
               Added support to BCM5716S.
      Change:
               Added support to BCM5716S.
      Impact:
               BCM5716S adapter.

   2. Request:
               Added support to BCM57760/57780/57790.
      Change:
               Added support to BCM57760/57780/57790.
      Impact:
               BCM57760/57780/57790 adapters.

   Fixes:
   =====
   1. Problem: CQ38701
               Bmapilnx failed in API BmapiGetFwInfo() for BCM57790.
      Cause:
               BCM57790 was not supported in Bmapilnx.
      Change:
               BCM57790 is now supported in Bmapilnx.
      Impact:
               BCM57790 adapter.


Version 6.4.10 (Nov 12, 2008)
---------------------------------

   Fixes:
   =====
   1. Problem: CQ38109
               Some NICs were not detected by bmapilnx in VMware ESX
               4.0 system.
      Cause:
               These NICs were assigned bus number that were equal or
               larger than 10.  The Bus_Info string returned in Ethtool
               interface has the bus number, device number, and function
               number that are in decimal, instead of hex.  The hex
               format was used in RedHat, SuSE and VMware ESX 3.x system.
               With incorrect bus/device/function numbers, the
               bmapilnx could not detect these NICs.
      Change:
               The bmapilnx will retrieve the bus/device/function numbers
               returned in Bus_Info string based on the OS.  For VMware
               ESX4, the bus/device/function numbers are in deciaml.
      Impact:
               NICs that are assigned with bus number that were equal or
               larger than 10 in VMware ESX4 system.


Version 6.4.9 (Oct 28, 2008)
---------------------------------

   Enhancements:
   =============
   1. Request:
               Make some internal functions to be invisible during
               linking time.
      Change:
               These internal functions are only visible within bmapilnx.
      Impact:
               None.


Version 6.4.8 (Oct 22, 2008)
---------------------------------

   Fixes:
   =====
   1. Problem: CQ37770
               The LED test will continue forever with the tg3 driver,
               v3.90b and above.
      Cause:
               The new driver interpreted the default value passed by
               bmapilnx differently.  The value is used for the duration
               of the LED test.
      Change:
               The bmapilnx will pass a correct value for the duration
               of the LED test, instead of the default value.
      Impact:
               LED test.


Version 6.4.7 (Oct 07, 2008)
---------------------------------

   Enhancements:
   =============
   1. Request: CQ36507
               Added support to device name that is not "eth*".
      Change:
               Added support to device name that is not "eth*".
      Impact:
               All adapters.


Version 6.4.6 (Sep 29, 2008)
---------------------------------

   Enhancements:
   =============
   1. Request: CQ36439
               Added support for 57710/5709 NICs in PPC64 environment.
      Change:
               Added support for 57710/5709 NICs in PPC64 environment.
      Impact:
               NX2 adapters in PPC64 environment.

   2. Request: CQ36847
               Added FWUPG tool to support NX2 adapters for Linux on
               PPC64 system.
      Change:
               Added FWUPG tool to support NX2 adapters for Linux on
               PPC64 system.
      Impact:
               NX2 adapters in PPC64 environment.

   Fixes:
   =====
   1. Problem: CQ37501
               The FWUPG tool for NX2 NIC does not work on PPC64 system.
      Cause:
               The FWUPG tool does not support NX2 NICs on PPC64 system.
      Change:
               Added FWUPG tool to support NX2 adapters for Linux on
               PPC64 system.
      Impact:
               NX2 adapters in PPC64 environment.


Version 6.4.5 (Jul 17, 2008)
---------------------------------

   Enhancements:
   =============
   1. Request:
               Added support for BCM5716 NIC.
      Change:
               Added support for BCM5716 NIC.
      Impact:
               BCM5716-based adapter.


Version 6.4.4 (Jun 25, 2008)
---------------------------------

   Fixes:
   ======
   1. Problem: CQ35789
               The version stinrg for BootCode1 was not returned
               correctly in BmapiGet5706FwInfo() for BCM5709.
      Cause:
               The BMAPILNX did not locate the BootCode1 version
               string in the NVRAM correctly for some BCM5709 NICs
               due to the setting for the flash type.
      Change:
               The BMAPILNX should locate the BootCode1 version
               string without checking the flash type since the
               BCM5709 NIC does handle the address translation
               for different flash type internally.
      Impact:
               BCM5709 NIC.


Version 6.4.3 (Jun 23, 2008)
---------------------------------

   Enhancements:
   =============
   1. Request: CQ35467
               To support BCM57711E NIC.
      Change:
               Added support to BCM57711E NIC.
      Impact:
               BCM57711E NIC.


Version 6.4.2 (May 30, 2008)
---------------------------------

   Fixes:
   ======
   1. Problem: CQ34237
               After upgrading the firmware, the default route using
               the NIC would be lost.
      Cause:
               After upgrading the firmware, the application bring
               down and up the NIC by manipulating the interface flag.
               During this process, the default route using the interface
               was not recovered and lost.
      Change:
               The bmapilnx will use a different method to bring down
               and up the NIC if a default route is using the interface.
               The default route is recovered.
      Impact:
               All NetXtreme adapters.


Version 6.4.1 (May 23, 2008)
---------------------------------

   Fixes:
   ======
   1. Problem: CQ35448
               The SERDES bootcode file can't be used to upgrade
               the BCM5708S NIC with a Remote PHY.
      Cause:
               The BCM5708S NIC with a Remote PHY was detected as
               BCM5708C because the TP (twisted pair) media interface
               in the Remote PHY and the SERDES bootcode file was not 
               allowed to upgrade to a BCM5708C NIC.
      Change:
               The BCM5708S NIC with a Remote PHY is now detected
               correctly and the SERDES bootcode file is allowed to
               upgrade to the NIC.
      Impact:
               NetXtreme adapters with Remote PHY.


Version 6.4.0 (Apr 16, 2008)
---------------------------------

   Enhancements:
   =============
   1. Request: 
                To support NCSI version string.
      Change:
                The NCSI version string was returned in
                BmapiGet5706FwInfo and BmapiGet57710FwInfo.
      Impact:
                All adapters.


Version 6.3.48 (Mar 28, 2008)
---------------------------------

   Fixes:
   ======
   1. Problem: CQ33942
               Unknown device for BCM5723 adapter.
      Cause:
               The BCM5723 device ID was not recognized by bmapilnx.
      Change:
               The BCM5723 device ID was added to the adapter list.
      Impact:
               BCM5723 adapters.


Version 6.3.47 (Mar 07, 2008)
---------------------------------

   Fixes:
   ======
   1. Problem:
               NVRAM access is slow for BCM5761 adapter.
      Cause:
               The NVRAM was detected as SEEPROM.
      Change:
               The NVRAM is now detected as Flash.
      Impact:
               BCM5761 adapters.


Version 6.3.46 (Jan 22, 2008)
---------------------------------

   Fixes:
   ======
   1. Problem:
               The FWUPG "cfg -mac <mac address>" command does
               not work correctly for BCM5764M/BCM5784M adapter.
      Cause:
               The new MAC address was written to NVRAM, but it
               can't be retrieved from NVRAM because the BCM5764M/
               5784M adapters were not recognized as supported
               NICs by the bmapilnx.
      Change:
               The bmapilnx can now recognize the BCM5764M/5784M
               as valid NICs and the new MAC address can be
               retrieved correctly from NVRAM.
      Impact:
               BCM5764M/5784M-based adapters.


Version 6.3.45 (Jan 07, 2008)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               To support BCM5764M, BCM5784M and BCM5761 NICs.
      Change:
               Added support to BCM5764M, BCM5784M and BCM5761 NICs.
      Impact:
               BCM5764M, BCM5784M and BCM5761 NICs.
               The Linux tg3 driver v3.83 or above is required for
               this feature.


Version 6.3.44 (Nov 13, 2007)
---------------------------------

   Fixes:
   ======
   1. Problem:
               Adapter without cable connection was reported as a
               down interface.
      Cause:
               The "Running" flag of the interface was checked to
               determine if the interface is "Up".  The interface
               is not "Running" if the cable is not connected.
      Change:
               The "Up" flag of the interface was checked to determine
               if the interface is "Up".
      Impact:
               All adapters.


Version 6.3.43 (Nov 12, 2007)
---------------------------------

   Fixes:
   ======
   1. Problem:
               Memory leak occurred when BmapiRefreshData() function
               is used by application.
      Cause:
               Memory allocated previously for the internal data was
               not freed completely while new memory was allocated
               for the refresh data.
      Change:
               Make sure the memory allocated previously was freed
               completely.
      Impact:
               All applications that use BmapiRefreshData() function.


Version 6.3.42 (Nov 07, 2007)
---------------------------------

   Fixes:
   ======
   1. Problem: CQ32211
               NMI/SMI occurred when one interface of BCM5709 was down.
      Cause:
               The register were accessed when the device was in D3-hot
               state.
      Change:
               Make sure the device's registers are not accessed when
               the device is in D3-hot state.
      Impact:
               All NetXtreme II adapters.


Version 6.3.41 (Nov 01, 2007)
---------------------------------

   Fixes:
   ======
   1. Problem:
               Some commands in FWUPG utility for NetXtreme I adapter
               do not work correctly.
      Cause:
               The nic_type of NetXtreme I adapter was corrupted due
               to a bug injected in v6.3.40 release.
      Change:
               The bug is fixed and the nic_type of NetXtreme I
               adapter is now correct.
      Impact:
               All NetXtreme I adapters.


Version 6.3.40 (Oct 22, 2007)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               To support BCM57710 NIC.
      Change:
               Added support to BCM57710 NIC.
      Impact:
               BCM57710 NIC.
               The Linux bnx2x driver v0.40.10 is required for this feature.


Version 6.3.39 (Sept 17, 2007)
---------------------------------

   Fixes:
   ======
   1. Problem:
               Report 5722 as C0 while it is A0.
      Cause:
               Not properly read out chip ID
      Change:
               Read out chip ID correctly.
      Impact:
               5722 chip revision

   2. Problem: CQ31440
               Segmentation fault for NX1 adapter on RH4U5-32.
      Cause:
               The PCI config data were not read correctly from
               the /sys/bus/pci/devices file system.
      Change:
               The PCI config data are retrieved correctly from
               the /sys/bus/pci/devices file system.
      Impact:
               All adapters.


Version 6.3.38 (Sept 14, 2007)
---------------------------------

   Fixes:
   ======
   1. Problem: CQ28989
               BMAPILNX does not detect BRCM adapters correctly
               on the IBM Cell blade.
      Cause:
               The domain number of PCI device was not supported.
      Change:
               Each PCI device is uniquely identified by the
               domain:bus:device.function.  All the PCI config
               data are retrieved from /sys/bus/pci/devices
               directory if it is supported.  Otherwise, they
               are retrieved from /proc/bus/pci directory. 
      Impact:
               All adapters.


Version 6.3.37 (July 13, 2007)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               To support BCM5709 NIC.
      Change:
               Added support to BCM5709 NIC.
      Impact:
               BCM5709 NIC.
               The Linux bnx2 driver v1.6.3b is required for this feature.


Version 6.3.36 (May 03, 2007)
---------------------------------

   Fixes:
   ======
   1. Problem: CQ29318
               BMAPILNX does not support VMAC.
      Cause:
               The VMAC was not stored correctly in the field
               that is used by all the applications.  Instead,
               The permanent MAC address was returned.
      Change:
               For Linux kernel 2.6.14 and above, the permanent
               MAC address is retrieved by the ETHTOOL_GPERMADDR
               ioctl which will return the correct VMAC/permanent MAC.
               If the driver does not support the ETHTOOL_GPERMADDR
               ioctl, the permanent MAC address is retrieved from
               NVRAM.  For Linux that is below 2.6.14, the 
               ETHTOOL_GPERMADDR is not supported and the
               permanent MAC address is retrieved from NVRAM.
      Impact:
               All adapters.


Version 6.3.35 (Mar 12, 2007)
---------------------------------

   Fixes:
   ======
   1. Problem:
               BMAPILNX can get into an infinite loop when an
               ETHTOOL_GLINK ioctl command failed.
      Cause:
               The error handling code jumped to a location that
               will try to issue the ETHTOOL_GLINK ioctl again.
      Change:
               The error handling code posted an error message
               and exited when the ETHTOOL_GLINK ioctl failed.
      Impact:
               All adapters.


Version 6.3.34 (Feb 28, 2007)
---------------------------------

   Fixes:
   ======
   1. Problem: CQ28659 
               Device list in lnxfwupg is not displayed properly.
      Cause:
               The brcm_pci.ids in the bmapilnx RPM contains 'CR'
               and 'LF' at the end of each device name string.
      Change:
               Ran a script to eliminate the 'CR' at the end of each
               device name string in brcm_pci.ids before making the
               bmapilnx RPM.
      Impact:
               All adapters.

Version 6.3.33 (Jan 02, 2007)
---------------------------------

   Fixes:
   ======
   1. Problem:  
               Ethtool interface does not work in Xen Linux.
               See CQ#26795 for detail.
      Cause:
               The Xen package will virtualize network devices.
               The virtual nic driver supports limited Ethtool operations.
      Change:
               BMAPI will use either ethN or pethN to issue the Ethtool IOCTL
               to the driver.  Under Xen Linux, the physical device can be
               either ethN or pethN depending on if the network-bridge is
               started.
      Impact:
               Under single Xen Linux, the BMAPI can work correctly with Ethtool.
               System with multiple Xen Linux OSes is not tested.

Version 6.3.32 (November 30, 2006)
---------------------------------

   Fixes:
   ======
   1. Problem:  
               Adapter was incorrectly reported with bad bootstrap magic.
      Cause:
               Incorrect structure was used in the routine to retrieve 
               mac address for adapters loaded with tg3 driver.
      Change:
               Fix the routine to use the correct structure.
      Impact:
               MAC address for adapters loaded with tg3 driver.


   2. Problem:  
               Lib64 search path for ppc needs to be fixed.
      Cause:
               The linker specified in previous releases caused the 
               wrong loader path to be hard coded in the ELF file.
      Change:
               Rework ConTestApp/Makefile to use the system default 
               compilers and linker with proper CFLAGS and LFLAGS 
               options.
      Impact:
               The reported message "bad ELF interpreter" should not 
               be seen when running BMAPILNX/ConTestApp on any PPC 
               platform.


Version 6.3.31 (November 21, 2006)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               To support 5906 based chips.
      Change:
               Added support to handle the above chips.
      Impact:
               All releted APIs.

   2. Request: 
               CQ22475 - Need BMAPI support to enable/disable IPMI.
      Change:
               Enhance BmapiSetASFTable() to support enable/disable
               IPMI. Applicable changes were rolled over from Windows
               BMAPI v7.5.8.
      Impact:
               Note that applications can only enable/disable IPMI.
               No other configuration settings are allow to set.
               This limitation had been communicated to OEM and
               accepted.
               BmapiSetASFTable().


Version 6.3.30 (November 14, 2006)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               CQ26481 - Method for getting UMP version for 
               multifunction NICs.
      Change:
               Added new fields in BM_FW_INFO and BM_FW_INFO_5706 to 
               support new types of firmware.
      Impact:
               1. BM_FW_INFO and FW_FW_INFO_5706 in BMAPI.h.
               2. BmapiGet5706FwInfo() and BmapiGetFirmwareInfo().

   2. Request: 
               To handle bond ID properly for Stanford chips.
      Change:
               Use Stanford chips bond ID mask.
      Impact:
               All Stanford chips.

   Fixes:
   ======
   1. Problem: 
               1. CQ26991 
                  lnxfwupg will not upgrade bootcode or IPMI for 5704.
               2. CQ27119 
                  lnxfwupg cannot enable IPMI on both 5704c ports 
                  simultaneously
      Cause:
               The nvram was write protected making the write operation
               unsuccessful. 
      Change:
               Ensure write protect was properly handled upon
               programming the device.
      Impact:
               BmapiSetASFTable()
               BmapiWriteFirmware()
               BmapiWriteFirmwareInfo()

               Note:
               The changes only apply to dual-port LOM devices with
               SEEPROM in the 5704/5714/5715/5780 family.

   2. Problem: CQ27394: 
               PCI.IDS file left open after BMAPI close.
      Cause:
               Previous releases left pci.ids file open even after
               BmapiUninitialize().
      Change:
               Ensured to close pci.ids file as soon as the file is
               no longer needed.
      Impact:
               pci.ids should not be left open after BmapiUninitialize().

   3. Problem:
               CQ26833 - PXE version string displayed incorrect info.
      Cause:
               Previous releases used a 16-bit mask to get the PXE 
               version offset. When its offset exceeded 0x10000, the 
               retrieved version information was then incorrect.
      Change:
               Fixed the related routine to use 32-bit mask.
      Impact:
               BmapiGetFirmwareInfo()


Version 6.3.29 (November 1, 2006)
---------------------------------

   Enhancements:
   =============
   1. Request:  
               To provide symbolic link between /usr/lib64 and /usr/lib
               for libbmapi_x64.
      Change:
               Modified the rpm installation for x86_64 to create 
               symbolic link between /usr/lib64 and /usr/lib for 
               libbmapi_x64, the 64-bit library for x86_64.
      Impact:
               The rpm for x86_64 should create symbolic link between
               /usr/lib64 and /usr/lib for libbmapi_x64.

   2. Request: 
               To update BM_FW_MEDIA_MANUFACT_REGION. 
      Change:
               Updated the required structures in BMAPI.h. 
      Impact:
               BMAPI.h

   Fixes:
   =============
   1. Problem: CQ27090       
               Linux Firmware Update utilities caused Seg Fault if PCI 
               IDs file not present.
      Cause:
               Previous BMAPILNX assumed that pci.ids would be always
               present. The segmentation fault was caused by an invalid
               access to a non-existent file in BMAPILNX.
      Change:
               Added code to handle the reported case when pci.ids is
               not found on the system..
      Impact:
               No segmentation fault should be observed at any time. 
               If the system has no pci.ids file, "Unknown device"
               will be reported in the device title.


Version 6.3.28 (Sept. 28, 2006)
---------------------------------

   Enhancements:
   =============
   1. Request: CQ26383
               To provide better search path to locate brcm_pci.ids. 
      Change:
               Implemented the search path priority as requested in
               the following order.
                  Priority 1: The path set by $BMAPI_PCI_LOCATION.
                  Priority 2: The $PWD path for current directory. 
                  Priority 3: The /usr/share directory.
      Impact:
               brcm_pci.ids can be located from one of the above paths.
               readme.txt was updated to document this change.

   Fixes:
   =============
   1. Problem:         
               lnxfwupg failed to configure MAC address for the 2nd
               port on a 5704 device.
      Cause:
               The 2nd port information was retrieved from an incorrect 
               location. 
      Change:
               To retrieve the 2nd port information from the related
               device register.
      Impact:
               Dual port devices.


Version 6.3.27 (July 11, 2006)
---------------------------------

   Fixes:
   =============
   1. Problem: CQ25713       
               lnxfwupg reports MAC address swapped on dual port NICs.
      Cause:
               Previous version did not consider port swapped cases.
      Change:
               Corrected the code to cover port swapped cases.
      Impact:
               MAC address should always be reported correctly for
               all NICs.


Version 6.3.26 (June 30, 2006)
---------------------------------

   Fixes:
   =============
   1. Problem: CQ25237       
               BCM5786 was reported as "Unknown device".
      Cause:
               brcm_pci.ids was not updated to include new devices.
      Change:
               Updated brcm_pci.ids to include new devices. 
      Impact:
               No QLogic device should be reported as "Unknown device".


Version 6.3.25 (June 8, 2006)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               To update BM_ASF_CFG, BM_FW_FEATURE_CONFIG, 
               BM_NIC_SHARED_CONFIG, BM_FW_MEDIA_MANUFACT_REGION.
      Change:
               Updated the required structures in BMAPI.h. 
      Impact:
               BMAPI.h

   Fixes:
   =============
   1. Problem: CQ25237       
               BCM5786 was reported as "Unknown device".
      Cause:
               brcm_pci.ids was not updated to include new devices.
      Change:
               Updated brcm_pci.ids to include new devices. 
      Impact:
               No QLogic device should be reported as "Unknown device".

   2. Problem:        
               To rebuild BMAPILNX with gcc v3.2.3 on Red Hat Enterprise 
               Linux 3.0.
      Cause:
               Previous versions were built with gcc v2.96 on Red Hat 
               7.3 release.  
      Change:
               Re-build BMAPILNX with gcc v3.2.3 on Red Hat Enterprise 
               Linux AS release 3 (Taroon Update 6).
      Impact:
               BMAPILNX is not built on gcc v3.2.3.


Version 6.3.24 (May 31, 2006)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               To make all APIs available to support the firmware 
               upgrade utilities for ppc64 platform.
      Change:
               Modified BmapiWriteNicMem(), BmapiReadNicMem(), and 
               associated internal routines.
      Impact:
               BmapiWriteNicMem() 
               BmapiReadNicMem()

   Fixes:
   =============
   1. Problem:        
               Each port in a dual-port NIC should have its own
               permanent mac address.
      Cause:
               Previous version only retrieve the mac address for
               the 1st port.
      Change:
               Retrieved 2nd port permanent mac address from firmware. 
      Impact:
               BmapiGetBRCMNicInfoEx()
               BmapiGetPhyNic()

               In addition to the existing functionalities, the above
               two APIs will retrieve permanent mac address for all
               QLogic supported dual-port NICs loaded with "tg3" or 
               "bnx2" driver.


Version 6.3.23 (May 19, 2006)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               Need to provide permanent mac address to support both 
               lnxfwnx2 and lnxfwupg firmware upgrade tools.
      Change:
               Added routines to retrieve permanent mac address from 
               firmware and modified all associated APIs.
      Impact:
               BmapiGetBRCMNicInfoEx() and its man page.
               BmapiGetPhyNic() and its man page.

               In addition to the existing functionalities, the above
               two APIs will retrieve permanent mac address for each
               QLogic supported NIC loaded with "tg3" or "bnx2" driver.


Version 6.3.22 (May 5, 2006)
---------------------------------

   Enhancements:
   =============
   1. Request:  
               To provide NVRAM size for 5706 devices.
      Change:
               Request NVRAM size from bnx2 driver and provide the 
               inforamtion to applications.
      Impact:
               BmapiGetBRCMNicInfoEx().

   2. Request: 
               To make all APIs needed to support the firmware upgrade 
               utilities available.
      Change:
               Modified BmapiWriteNicMem(), BmapiReadNicMem(), and 
               associated internal routines.
      Impact:
               BmapiWriteNicMem() 
               BmapiReadNicMem()

   Fixes:
   =============
   1. Problem:        
               Make sure only qualified drivers are allowed to access ASF
               table.
      Cause:
               Previous version should only restrict qualified NICs with
               supported driver names to access ASF table.
      Change:
               Added the additional checking in the related routine.
      Impact:
               Any non-supported driver should not be able to access ASF
               table.


Version 6.3.21 (March 28, 2006)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               To support x86_64 and ppc64 architectures on the 
               following platforms:
               -  RedHat Enterprise Linux 3.0 (please refer to
                  "Known Limitations" in readme.txt)
               -  RedHat Enterprise Linux 4.0 
               -  Suse Linux Enterprise Server 9.0
               -  Suse Linux Professional 10.0
      Change:
               1. For x86, bmapilnx RPM package remains the same 
                  to provide 32-bit library (libbmapi).
               2. For x86_64, bmapilnx RPM package is added to 
                  provide 32-bit library (libbmapi) and 64-bit 
                  library (libbmapi_x64).
               3. For ppc64, bmapilnx RPM package is added to
                  provide 64-bit library (libbmapi_ppc64).
      Impact:
               1. On x86 platforms, bmapilnx RPM package and 32-bit
                  library (libbmapi) remain intact.
               2. On x86_64 platforms, bmapilnx RPM package will
                  install 32-bit library (libbmapi) and 64-bit library 
                  (libbmapi_x64).
                  With this RPM installation, the 32-bit library 
                  (libbmapi) is available to serve 32-bit applications 
                  as usual. In addition, the 64-bit library (libbmapi_x64) 
                  can be linked to run with 64-bit applications.
               3. On ppc64 platforms, bmapilnx RPM package will install 
                  64-bit library (libbmapi_ppc64).
               4. Upon installation, each RPM package should be ensured 
                  and loaded only on the supported CPU platform.
               5. readme.txt and associated man3 pages.

   2. Request: 
               To add BmapiWriteFirmwareInfo() and its man page
               for Linux.
      Change:
               Added BmapiWriteFirmwareInfo().
      Impact:
               BmapiWriteFirmwareInfo() and associated man3 pages.


Version 6.3.20 (March 7, 2006)
---------------------------------

   Enhancements:
   =============
   1. Request: CQ23682 
               To update readme.txt for a known problem
               in Linux kernel causing BMAPILNX to report
               error code 58 when running tg3.
      Change:
               Modified "Known Limitations" in readme.txt.
      Impact:
               readme.txt and RPM package.


Version 6.3.19 (March 3, 2006)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               To support 5754, 5755, and 5787 chips.
      Change:
               Added support to handle the above chips.
      Impact:
               All releted APIs.

   2. Request: 
               To support selfboot feature for 5787 chip.
      Change:
               Modified related APIs to support selfboot feature.
      Impact:
               1. BmapiGetFirmwareInfo() and BmapiWriteFirmwareInfo().
               2. BmapiGetASFTable() and BmapiSetASFTable().

   3. Request: 
               To add BmapiEnableDevice() and BmapiGet5706FwInfo() 
               for Linux.
      Change:
               Added BmapiEnableDevice() and BmapiGet5706FwInfo().
      Impact:
               BmapiEnableDevice() and BmapiGet5706FwInfo() and
               associated man3 pages.
   
   4. Request: 
               To support x86 for 32-bit and x86_64 for 64-bit
               architecture on the following platforms:
               -  RedHat Enterprise Linux 3.0 (x86 only, please 
                  refer to "Known Limitations" in readme.txt)
               -  RedHat Enterprise Linux 4.0 
               -  Suse Linux Enterprise Server 9.0
               -  Suse Linux Professional 10.0
      Change:
               Implemented all changes as required.
      Impact:
               1. Makefile, build environment, and readme.txt.
               2. 32-bit and 64-bit binaried are available for
                  the supported platforms.
 
   Fixes:
   =============
   1. Problem: CQ23451       
               Newly changed IP did not respond to RCMP pings before
               the NIC was brought down and up.
      Cause:
               The suspend and resume driver functions for tg3 
               were not handled properly.
      Change:
               Fixed the code to suspend and resume the device loaded 
               with tg3 driver.
      Impact:
               BmapiSuspendDriverEx()
               BmapiResumeDriverEx()

   2. Problem:        
               To roll over applicable fixes for CQ22654 and CQ22336
               submitted to Windows BMAPI.
      Cause:
               CQ22654, the register value was affected by the link status.
               CQ22336, HW/BIOS problem.
      Change:
               Rolled over the applicable fixes from Windows BMAPI 
               between v7.3.10 and v7.3.15.
      Impact:
               BmapiTestControlRegisters()
               BmapiTestControlRegistersEx()
               BmapiTestEEPROM() 
               BmapiTestEEPROMEx()


Version 6.3.18 (November 3, 2005)
---------------------------------

   Fixes:
   =============
   1. Problem:        
               To remove the unwanted output message from stdout.
      Cause:
               An informational printf() remained in the code.
      Change:
               Removed the extra printf() statement.
      Impact:
               The output message showing "PCI_IDS_FILE found at ..."
               is removed.


Version 6.3.17 (October 28, 2005)
---------------------------------

   Fixes:
   =============
   1. Problem:        
               BmapiSetASFTable() should not able to change
               configuration for IPMI and UMP.
      Cause:
               The API did not check for the type of management
               firmware in NVRAM.
      Change:
               Rolled over applicable fixes submitted to Windows 
               BMAPI between v7.2.16 and v7.3.9.
      Impact:
               BmapiSetASFTable()

   2. Problem:        
               Need to restore the memory value after memory test.
      Cause:
               The original algorithm did not restore the memory value
               upon completion of the memory test. 
      Change:
               Implemented memory test to read out the memory value, 
               do the test and then restore the memory value.
      Impact:
               BmapiTestInternalMemoryEx().


Version 6.3.16 (October 10, 2005)
-----------------------------------

   Fixes:
   =============
   1. Problem: Error returned from BmapiGetASFTable() while running
               ASFSCFG on a HTLE LOM with tg3 driver 3.41b.
      Cause:
               The internal algorithm missed to implement the 
               ethtool access for the 2-port devices.
      Change:
               Added the ethtool access for the 2-port devices.
      Impact:
               The ASF capabilities should be available to all tg3 
               based adapter with driver version >=3.37 on the Linux
               systems capable of accessing EEPROM via "ethtool -e". 

   2. Problem: CQ13653
               BmapiInitializeEx() seems very slow on a freshly loaded
               Linux system.
      Cause:
               The internal algorithm used the 'locate' command to 
               look up the pci.ids on the system.  Unfortunately,
               the 'locate' command is not immediately available on 
               some freshly loaded Linux systems, thus causes some 
               delay.
      Change:
               Modified the internal algorithm not to depend on the 
               'locate' command.
      Impact:
               The call to BmapiInitializeEx() should not cause any
               slowness even on a freshly loaded system.
                     

Version 6.3.15 (September 29, 2005)
-----------------------------------

   Enhancements:
   =============
   1. Request:
               Do not perform MAC loopback for HTLE devices.
      Change:
               Made MAC loopback test unavailable to HTLE devices.
      Impact:
               No MAC loopback test for HTLE devices.

   Fixes:
   =============
   1. Problem:       
               Should not report any QLogic NICs as "Unknown device".
      Cause:
               The pci.ids file on the Linux system ws not updated with
               the latest version from http://pciids.sourceforge.net.
      Change:
               Include brcm_pci.ids in the bmapilnx rpm package and
               install the file at /usr/share upon 'rpm -i' for
               bmapilnx installation.
               For any QLogic devices, bmapilnx will look up
               information from /usr/share/brcm_pci.ids; otherwise,
               it will go for the pci.ids on the system.
      Impact:
               No QLogic devices should be reported as "Unknown".
                       

Version 6.3.14 (August 31, 2005)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               To add diagnostics support for both tg3 and bnx2 
               based adapters.
      Change:
               Implemented the requested support in all related 
               functions.
               The following diagnostic tests were added for all 
               tg3 adapters (driver version >=3.37) and all bnx2
               based adapters (driver version >=1.3.25).
                   BRCM Control Registers
                   BRCM MII Registers
                   BRCM EEPROM
                   BRCM Internal Memory
                   BRCM Interrupt
                   BRCM MAC Loopback
                   BRCM PHY Loopback
                   BRCM LED
      Impact:
               All APIs to support the diagnostic functionalities.
               The above diagnostic tests are available to all tg3 
               adapters with driver version >=3.37 and all bnx2
               based adapters with driver version >=1.3.25.

   2. Request: 
               To add ASF support for tg3 based adapter.
      Change:
               Added the requested support in all related functions.
      Impact:
               All APIs to support the ASF functionalities.
               The ASF capabilities are available to all tg3 based 
               adapters with driver version >=3.37.

   3. Request: 
               To make statistics information and additional adapter
               information available to both tg3 and bnx2 based 
               adapters.
      Change:
               Added the requested support in all related functions.
      Impact:
               All APIs to support the requested functionalities.
               The statistics information and additional adapter
               information are available to all tg3 based adapters 
               with driver version >=3.37 and all bnx2 based adapters 
               with driver version >=1.3.25.


Version 6.3.13 (April 26, 2005)
---------------------------------

   Fixes:
   =============
   1. Problem:        
               Roll over CPU test fixes for CQ12698 from Windows BMAPI.
      Cause:
               When driver verifier is enabled on the system, the
               slower timing will intermittantly cause test firmware
               to fail to access NVRAM due to CPU reset and halt.
      Change:
               Merge with the CPU test fixes from Windows BMAPI 
               v7.2.15.
      Impact:
               BmapiTestCPU() and BmapiTestCPUEx() on all 570x chips.

   2. Problem:        
               Need to update BM_FW_MEDIA_MANUFACT_REGION.
      Cause:
               New fields were added to media_manufact_region_t in
               include/media_rgn.h.
      Change:
               Updated BM_FW_MEDIA_MANUFACT_REGION and related 
               functions accordingly.
      Impact:
               BmapiGetFirmwareInfo().


Version 6.3.12 (Mar. 09, 2005)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               To remove 0x2018 from register test for 5750 chips.
      Change:
               Removed 0x2018 from the register list.
      Impact:
               Register Test.

              
Version 6.3.11 (Feb. 24, 2005)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               To support 5714 and 5752 chips.
      Change:
               Added support to handle 5714 and 5752 chips.
      Impact:
               All.

              
Version 6.3.10 (Feb. 1, 2005)
---------------------------------

   Fixes:
   =============
   1. Problem: CQ11272
               BMAPILNX failed to access pci.ids file.
      Cause:
               Unlike other linux systems, some SuSE 9 systems do not 
               recognize the -n option in the "locate -n 1 pci.ids" 
               command, some do not even recognize the "locate" 
               command.
      Change:
               Change algorithm to locate the file through the faster
               command "locate -n 1 pci.ids" first. For systems not
               recognizing the -n option, "locate pci.ids" will be 
               used. At last, the slow "find" command available on all
               systems should be able to locate the file.
      Impact:
               BMAPILNX should be able to locate the pci.ids on all
               systems. 


Version 6.3.9 (Jan. 3, 2005)
---------------------------------

   Fixes:
   =============
   1. Problem: CQ11099
               OLD should not cause OMSA to crash when running with 
               tg3 driver.
      Cause:
               The BMAPILNX stack was corrupted immediately after
               the ETHTOOL_GLINK ioctl() call.  This problem was
               only seen on Redhat AS2.1 with tg3 driver, ver 0.97.
      Change:
               Avoid making the ETHTOOL_GLINK ioctl() call when the
               driver is tg3 version 0.97.
      Impact:
               If the driver is tg3, version 0.97, the link status 
               can only be reported as Unknown. The algorithm for 
               the other drivers remains intact.


Version 6.3.8 (Dec. 17, 2004)
---------------------------------

   Fixes:
   =============
   1. Problem: CQ10828
               Need to support new loopback tests for bcm5700.
      Cause:
               The MAC/PHY/EXT loopback tests were not implemented by 
               the bcm5700 driver.
      Change:
               Changed algorithm to support the new loopback tests for
               the bcm5700 driver v7.4.12 and later versions. 
      Impact:
               The bcm5700 driver v7.4.12 and later versions should be
               able to exercise the MAC, PHY, and External loopback
               tests.  The old loopback algorithm for the earlier 
               bcm5700 dirvers remains intact.


Version 6.3.7 (Dec. 2, 2004)
---------------------------------

   Fixes:
   =============
   1. Problem:        
               pci.ids file should be accessible by applications
               interfacing with BMAPILNX even when the resource 
               file .bmapi.conf is not configured.
      Cause:
               The routine to locate the pci.ids file is not called
               when the resource file is not present.
      Change:
               Re-work the logic so that pci.ids can be successfully 
               located before checking the presence of the resource 
               file.
      Impact:
               All applications interfacing with BMAPILNX should be 
               able to locate the pci.ids regardless of the presence
               of the resource file.


Version 6.3.6 (Nov. 24, 2004)
---------------------------------

   Fixes:
   =============
   1. Problem: CQ11272
               BMAPILNX failed to access pci.ids file.
      Cause:
               The code used to depend on some pre-designated paths.
      Change:
               Change algorithm to locate the file without having to
               depend on some pre-designated paths.
      Impact:
               BMAPILNX should be able to locate the pci.ids on all
               systems. 

   2. Problem: 
               BMAPILNX needs to report ui_number for 64-bit machine.
      Cause:
               The internal access method was only good for the 
               32-bit machine but not for the 64-bit machine.
      Change:
               Change internal access method to locate the PCI IRQ 
               Routing Table for both 32-bit and 64-bit machines.
      Impact:
               The ui_number field should be reported correctly for
               the 64-bit machine.


Version 6.3.5 (Nov. 2, 2004)
---------------------------------

   Fixes:
   ======
   1. Problem: 
               Re-geneate RPM files to be backward compatible with
               applications using older version of gcc compiler.
      Cause:   
               RPM files generated on a later Redhat kernel using 
               newer version of gcc might introduce problems to a 
               dependent application using an older version of gcc. 
      Change:
               Re-generate RPM files on Redhat 7.3 (kernel/2.4.18-3;
               gcc/2.96)
      Impact:
               None.


Version 6.3.4 (Oct. 29, 2004)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               To provide L2 support for BRCM5706 open source driver.
      Change:
               Add the requested support in all related functions.
      Impact:
               All APIs with the following exceptions:
                  1. All APIs related to ASF/DIAG/TEST/Statistics 
                     remain intact.
                  2. The following APIs remain the same too. 
                     BmapiReadFirmware(), 
                     BmapiWriteFirmware,
                     BmapiGetFirmwareInfo(),
                     BmapiReadNicMem(),
                     BmapiWriteNicMem(),
                     BmapiGetBRCMNicInfoEx(),
                     BmapiGetBRCMNicStatistics(),

               The released version was tested on the following 
               Linux platforms:
                  - Redhat EL 3.0 (2.4.21-4.EL, i686)
                  - Redhat EL 3.0 Update 2 AMD64 (2.4.21-15.EL, x86_64)
                  - Redhat 4.0 Beta (2.6.8, x86_64)


Version 6.3.3 (Oct. 14, 2004)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               1. Change access method to get PCI configuration data.
               2. Remove use of /tmp/bmapi.lspci and /tmp/bmapi.tmp.
      Change:
               The access method of getting the PCI configuation data
               has been changed using a better algorithm. 
               In addition, the two files mentioned above are removed.
      Impact:
               User interface remains the same.


Version 6.3.2 (Oct. 8, 2004)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               Make BMAPILNX code base to be GNU clean and open source 
               compliant.
      Change:
               Re-worked some functionalities and cleaned up existing
               code.
      Impact:
               User interface remains the same.


Version 6.3.1 (Aug. 3, 2004)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               Add flags to indicate ASF 2.0 support in NIC
      Change:
               Add flags in BM_ASF_TABLE to indicate ASF 2.0
               capability.
      Impact:
               BM_ASF_TABLE


Version 6.3.0 (Jun. 7, 2004)
---------------------------------

   Enhancements:
   =============
   1. Request: CQ10254
               implement BmapiGetFirmwareInfo() for Linux
      Change:
               add BmapiGetFirmwareInfo()
      Impact:
               BmapiGetFirmwareInfo()


Version 6.2.3 (Jun. 1, 2004)
---------------------------------

   Enhancements:
   =============
   1. Request: 
               Add support 5751F.
      Change:
               Add ID for 5751F.
      Impact:
               all

   1. Request: 
               Check for driver for diagnostics functions.
      Change:
               BmapiInitDiag() will check whether the driver name is
               bcm5700 or not. If the driver is not bcm5700, error
               code BMAPI_NOT_SUPPORTED_DRV will be returned.
      Impact:
               BmapiInitDiag()


Version 6.2.2 (Mar. 15, 2004)
---------------------------------

   Fixes:
   ======
   1. Request: CQ9504
               BMAPI does not recognize the updated ASF cfg table
      Cause:
               SQA is testing the new firmware with old BMAPI which
               does not have knowledge of the new data structure.
      Change:
               include the new ASF structure
      Impact:
               BmapiGetASFTable() and BmapiSetASFTable()


Version 6.2.1 (Feb. 20, 2004)
---------------------------------

   Fixes:
   ======
   1. Request: 
               Application may see link error and may experience
               error (Segmentation Fault)
      Cause:
               The static link option for BMAPI is not done
               correctly.
      Change:
               link option in make file
      Impact:
               all applications


Version 6.2.0 (Feb. 17, 2004)
---------------------------------

   Fixes:
   ======
   1. Request: 
               Install BMAPI RPM on RedHat Enterprise Server 3.0 may
               show error during installation.
      Cause:
               RPM stops installtion because the dependent version of
               C and/or C++ standard library does not exist on the
               system.
      Change:
               Link against static libraries.
      Impact:
               All applications but low risk.

   Enhancements:
   =============
   1. Request: 
               Add BmapiGetBRCMNicStatistics() (required by CDM
               provider).
      Change:
               Add statiscitcs support.
      Impact:
               none.

   2. Request: 
               Support 575x devices.
      Change:
               Add 575x support in related functions.
      Impact:
               All APIs.

   3. Request: 
               Support ASF 2.0.
      Change:
               Add ASF 2.0 support in ASF related functions.
      Impact:
               All ASF related APIs.

Version 6.1.0 (Sep. 28, 2003 )
---------------------------------

   Fixes:
   ======
   1. Request: (CQ 8449)
               BMAPI fails to compile diag with redhat 9.
      Cause:
               Gcc link to wrong default C library when link with C++
               based obj.
      Change:
               Change Makefile to force to link with 'stdc++'.
      Impact:
               All applications but low risk.

   Enhancements:
   =============
   1. Request: 
               Three new APIs, BmapiGetBRCMNicInfoEx(),
               BmapiReadNicMem() and BmapiWriteNicMem() were added.
      Change:
               
      Impact:
               none

Version 6.0.2 (July 28, 2003 )
---------------------------------

   Enhancements:
   =============
   1. Request: (CQ 7965)
               Add external loopback capability to BMAPI.
      Change:
               BmapiTestLoopBackEx() will accepts
               BMAPI_LOOPBACK_TYPE_EXTERNAL as parameter to
               perform external loopback test.
      Impact:
               All chips except 4401 based NIC. For 570x based NICs,
               driver version 6.2.19 or later is REQUIRED.
               For detail information, please refer to BMAPI
               document.

Logs
--------
v6.0.1
- Fix CQ7112: BmapiResumeDriverEx() failed to resume driver after
  BmapiSuspendDriverEx() is called.
  Description: If an interface does not have cable connected and
  manually brought up (ifconfig ethX up), the intefrcae will be
  brought down by BMAPI at the end of diagnostics. The cause is that
  BMAPI check both 'UP' and 'RUNNING' flag for the interface.
  Resolution: BMAPI will check status 'UP' only in BmapiInitDiag().
- Starting driver v5.20, driver will deny MII register access and
  cause LED test failed if the interface is a fiber NIC. Bmapi will
  check the media before performing LED test. If the media is fiber,
  BMAPI will not use MII regesters. Note that bmapi can only blink
  LEDs controlled by MAC registers.

v6.0.0
- Bmapilnx will try to bring up the target interface for diagnostics
  in BmapiInitDiag() if the interface is not 'UP'. Bmaplnx will
  restore the interface to its original state in BmapiUnInitDiag().
- Support ASF! table in ACPI 2.0 BIOS.

v3.0.13
- Not to resolve host name when scanning routing table.

v3.0.12
- Handle one interface with multiple IP properly.
- Support rpm upgrade option.

v3.0.11
- Fix man pages installation problem.
- Fix exception when BMAPI is un-initialize and initialize again.
- Support 5700, 5701, 5702, 5703 and 5705 based deviced.

v3.0.10
- Require miniport driver 5.0.12 or later.
- Add following APIs.
  BmapiDoNicIOCTL()
  BmapiSuspendDriverEx()
  BmapiResumeDriverEx()
  BmapiTestControlRegistersEx()
  BmapiTestMIIRegistersEx()
  BmapiTestInternalMemoryEx()
  BmapiTestInterruptEx()
  BmapiTestLoopBackEx()
  BmapiTestCPUEx()
  BmapiTestLEDsEx()
  BmapiTestEEPROMEx()
  BmapiTestASF()
  BmapiRefreshData()

v3.0.9
- Support 'ui_number' field.

v3.0.8
- Support ASF on 5705.

v3.0.7
- Fix ClearQuest:
  5616: BMAPI get system asf table doesnt work.

v3.0.6
- Require driver v4.0.1 or later.
- Support ASF SNMP community name.
ATTENTION: Support 5700, 5701, 5702 and 5703 based adapters ONLY.

v2.2.25
- Require driver v3.0.11 or later.
- Support 'dhcp_enabled' attribute.
- Support 'default_gateway' attribute.
- BmapiSetASFTable() will generate chip reset to make changes take
  effect immediately.

v2.2.24
- Fix ClearQuest:
  5043: ASF status (in BM_ASF_CFG struc) is mismatched when compared
  between DOS diag and bmapilnx.
- Release version for 'man page' remains the same.

v2.2.23
- Add man pages for APIs support on Linux platform.

v2.2.22
- First release for Linux. Support Redhat Linux 7.3 on i386
  architecture.
- Require QLogic miniport driver for Linux (module name bcm5700)
  version 3.0.6 or later.
